KR102209783B1 - Method for providing streaming data packet through streaming server and node linking with base station, and node using the same - Google Patents
Method for providing streaming data packet through streaming server and node linking with base station, and node using the same Download PDFInfo
- Publication number
- KR102209783B1 KR102209783B1 KR1020150083909A KR20150083909A KR102209783B1 KR 102209783 B1 KR102209783 B1 KR 102209783B1 KR 1020150083909 A KR1020150083909 A KR 1020150083909A KR 20150083909 A KR20150083909 A KR 20150083909A KR 102209783 B1 KR102209783 B1 KR 102209783B1
- Authority
- KR
- South Korea
- Prior art keywords
- base station
- data packet
- streaming
- streaming data
- interworking node
- Prior art date
Links
Images
Classifications
-
- H04L65/605—
-
- H04L65/4069—
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/22—Parsing or analysis of headers
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
본 발명은 스트리밍 데이터 패킷 제공 방법에 관한 것으로, 특히 적어도 하나 이상의 기지국과 연결될 수 있는 기지국 연동 노드와 스트리밍 제공 서버를 이용하여, MPEG 미디어 트랜스포트(MMT; MPEG Media Transport) 기술을 이용하고 기지국의 트래픽 상황에 따라서 적응적으로 스트리밍 콘텐츠를 제공하는 스트리밍 제공 서버와 기지국 연동 노드를 통한 스트리밍 데이터 패킷 제공 방법, 이를 위한 기지국 연동 노드에 관한 것으로서, 이러한 본 발명의 일 실시 예에 따른 적어도 하나 이상의 기지국과 연결되는 기지국 연동 노드에 있어서, 상기 기지국 연동 노드는 스트리밍 제공 서버로부터 단말로 전달되는 스트리밍 데이터 패킷의 IP 헤더를 분석하여, 상기 스트리밍 데이터 패킷에 포함된 비디오 데이터의 프레임 압축 타입 정보를 분석하는 분석모듈; 및 상기 기지국의 혼잡상태에 따라서 상기 분석된 프레임 압축 타입 정보를 기준으로 상기 스트리밍 데이터 패킷을 선별적으로 제거하는 미디어 처리 모듈;를 포함하는 기지국 연동 노드를 제공할 수 있다.The present invention relates to a method of providing a streaming data packet, and in particular, using a base station interworking node and a streaming providing server that can be connected to at least one base station, using an MPEG Media Transport (MMT) technology and A method for providing streaming data packets through a streaming providing server and a base station interworking node that adaptively provides streaming content according to the situation, and a base station interworking node therefor, and is connected to at least one base station according to an embodiment of the present invention A base station interworking node, wherein the base station interworking node analyzes an IP header of a streaming data packet transmitted from a streaming providing server to a terminal, and analyzes frame compression type information of video data included in the streaming data packet; And a media processing module that selectively removes the streaming data packet based on the analyzed frame compression type information according to the congestion state of the base station.
Description
본 발명은 스트리밍 데이터 패킷 제공 방법에 관한 것으로, 더욱 상세하게는 적어도 하나 이상의 기지국과 연결될 수 있는 기지국 연동 노드를 이용하여 기지국의 트래픽 상황에 따라서, 스트리밍 제공 서버에서 단말로 전달되는 스트리밍 데이터 패킷을 적응적으로 제거할 수 있는 스트리밍 제공 서버와 기지국 연동 노드를 통한 스트리밍 데이터 패킷 제공 방법, 이를 위한 기지국 연동 노드에 관한 것이다.The present invention relates to a method for providing a streaming data packet, and more particularly, adapts a streaming data packet transmitted from a streaming providing server to a terminal according to a traffic situation of a base station by using a base station interworking node that can be connected to at least one base station. The present invention relates to a method for providing streaming data packets through a streaming providing server that can be removed locally, a base station interworking node, and a base station interworking node therefor.
이 부분에 기술된 내용은 단순히 본 실시 예에 대한 배경 정보를 제공할 뿐 종래기술을 구성하는 것은 아니다.The content described in this section merely provides background information on the present embodiment and does not constitute the prior art.
최근의 인터넷 환경에서 다양한 동영상 서비스가 등장하면서 고화질 라이브 방송에 대한 수요가 점점 증가하고 있다. 더하여, 최근에는 스트리밍(streaming) 서비스 방식에 따라 다양한 동영상 서비스를 제공하고자 하는 시도들이 이뤄지고 있다. With the appearance of various video services in the recent Internet environment, the demand for high-definition live broadcasting is gradually increasing. In addition, in recent years, attempts have been made to provide various video services according to a streaming service method.
스트리밍 서비스는 인터넷과 같은 네트워크를 통해 서버에서 단말로 비디오 또는 오디오와 같은 컨텐츠를 전송하는 것을 의미한다. 전송되는 데이터가 마치 물이 흐르는 것처럼 처리된다고 해서 스트리밍이라고 한다. 서버는 비디오를 네트워크로 보낼 수 있도록 패킷으로 분리하며, 단말은 그 패킷들을 다시 모아서 원래 형태로 복원한 후에 재생한다. 이때, 재생과 패킷 수신은 동시에 일어나며, 연관된 일련의 패킷들을 스트림(stream)이라 하며, 일련의 패킷들의 집합을 스트리밍 데이터라 한다.Streaming service means transmitting content such as video or audio from a server to a terminal through a network such as the Internet. Streaming is called because the transmitted data is treated as if water flows. The server divides the video into packets so that it can be sent to the network, and the terminal collects the packets again, restores them to their original form, and plays them. At this time, playback and packet reception occur simultaneously, and a series of related packets is called a stream, and a set of packets is called streaming data.
아울러, MPEG-2 TS(Transport System)는 표준화 이후 지상파 및 위성 디지털 방송, DMB, IPTV 등 다양한 산업 분야에서 미디어 전송을 위해 주로 사용되어 왔으며, 근래에는 디지털 비디오 카메라나 블루레이 장비에서의 미디어 저장을 위해 사용되는 등 그 사용 분야가 확장되고 있다. 그러나, 최근의 네트워크 환경은 급속히 변화하고 있으며, 다양한 이종망(heterogeneous network) 환경에서의 멀티미디어 전송 기술 등 새로운 요구 사항들이 필요시 되고 있다. 이에, 고도화된 여러 종류의 네트워크 환경에서 다양한 콘텐츠와 서비스를 제공하기 위한 새로운 기술의 표준이 요구되고 있으며, 이에 따라, MMT(MPEG Media Transport) 기술이 개발되고 있다. In addition, MPEG-2 TS (Transport System) has been mainly used for media transmission in various industries such as terrestrial and satellite digital broadcasting, DMB, and IPTV since standardization. Recently, media storage in digital video cameras or Blu-ray equipment has been The field of use is expanding, such as being used for. However, the recent network environment is rapidly changing, and new requirements such as multimedia transmission technology in various heterogeneous network environments are required. Accordingly, a new technology standard for providing various contents and services in various types of advanced network environments is required, and accordingly, MPEG Media Transport (MMT) technology is being developed.
그러나, 최근 다양한 미디어 서비스 수요가 발생함에 따라서, 고화질 미디어 콘텐츠 서비스 증가, 스포츠 경기와 같은 이벤트 발생시 급증하는 수요 증가로 인한 트래픽이 과부하 하는 문제가 발생한다.However, as demand for various media services has recently occurred, there is a problem that traffic is overloaded due to an increase in demand for high-definition media content services and an increase in demand when events such as sports events occur.
또한, 이러한 문제점을 해결하기 위해 서버에서는 다양한 화질을 가진 콘텐츠를 보유 해야 하는 문제가 있다.In addition, in order to solve this problem, there is a problem in that the server must have contents having various image quality.
본 발명은 상기한 종래의 문제점을 해결하기 위해 제안된 것으로서, 특히 MPEG 미디어 트랜스포트(MMT; MPEG Media Transport) 기술을 이용하고 트래픽량에 따라서 적응적으로 스트리밍 콘텐츠를 제공하는 서비스 방법, 장치 및 시스템을 제공하는 데 목적이 있다.The present invention has been proposed to solve the above-described conventional problems, and in particular, a service method, apparatus, and system for providing streaming content adaptively according to traffic volume using MPEG Media Transport (MMT) technology. There is a purpose to provide.
그러나, 이러한 본 발명의 목적은 상기의 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 명확하게 이해될 수 있을 것이다.However, the object of the present invention is not limited to the above object, and other objects that are not mentioned will be clearly understood from the following description.
상술한 과제 해결 수단으로서, 적어도 하나 이상의 기지국과 연결되는 기지국 연동 노드에 있어서, 상기 기지국 연동 노드는 컨텐츠의 스트리밍 서비스를 제공하는 스트리밍 제공 서버로부터 상기 기지국을 통해 단말로 전달되는 스트리밍 데이터 패킷의 헤더를 분석하여, 상기 스트리밍 데이터 패킷에 포함된 비디오 데이터의 프레임 압축 타입 정보를 분석하는 분석모듈; 및 상기 기지국의 트래픽량에 따라서 상기 분석된 프레임 압축 타입 정보를 기준으로 상기 스트리밍 데이터 패킷에 포함된 비디오 데이터를 선별 제거하여 상기 컨텐츠의 프레임 레이트를 조절하는 미디어 처리 모듈;를 포함하는 것을 특징으로 하는 기지국 연동 노드를 제공할 수 있다.As the above-described problem solving means, in a base station interworking node connected to at least one base station, the base station interworking node receives a header of a streaming data packet transmitted from a streaming providing server providing a streaming service of content to a terminal through the base station. An analysis module for analyzing and analyzing frame compression type information of video data included in the streaming data packet; And a media processing module configured to select and remove video data included in the streaming data packet based on the analyzed frame compression type information according to the amount of traffic of the base station to adjust the frame rate of the content. It is possible to provide a base station interworking node.
본 발명의 바람직한 실시 예에 따른 기지국 연동 노드에 있어서, 상기 스트리밍 데이터 패킷은 MPEG 미디어 트랜스포트(MMT; MPEG Media Transport) 패킷으로 할 수 있다.In the base station interworking node according to a preferred embodiment of the present invention, the streaming data packet may be an MPEG Media Transport (MMT) packet.
본 발명의 바람직한 실시 예에 따른 기지국 연동 노드에 있어서, 상기 스트리밍 데이터 패킷은 1 프레임 단위로 전송 할 수 있다.In the base station interworking node according to a preferred embodiment of the present invention, the streaming data packet may be transmitted in units of one frame.
본 발명의 바람직한 실시 예에 따른 기지국 연동 노드에 있어서, 상기 미디어 처리 모듈은 I, B, P 타입의 프레임 압축 타입 중, B 또는 P 타입의 비디오 데이터 중 적어도 일부를 일정 비율로 제거할 수 있다.In the base station interworking node according to a preferred embodiment of the present invention, the media processing module may remove at least a part of video data of B or P type among I, B, and P type frame compression types at a predetermined ratio.
본 발명의 바람직한 실시 예에 따른 기지국 연동 노드에 있어서, 상기 분석모듈은 상기 헤더의 ToS(Type of Service) 필드로부터 상기 프레임 압축 타입 정보를 분석할 수 있다.In the base station interworking node according to a preferred embodiment of the present invention, the analysis module may analyze the frame compression type information from the ToS (Type of Service) field of the header.
본 발명의 바람직한 실시 예에 따른 기지국 연동 노드에 있어서, 상기 미디어 처리 모듈은 상기 기지국의 트래픽량에 따라서 프레임 레이트를 결정하고, 상기 프레임 레이트에 따라서 상기 분석된 프레임 압축 타입 정보를 기준으로 상기 비디오 데이터의 제거 비율을 설정할 수 있다.In a base station interworking node according to a preferred embodiment of the present invention, the media processing module determines a frame rate according to the amount of traffic of the base station, and the video data based on the analyzed frame compression type information according to the frame rate. You can set the removal rate of.
본 발명의 바람직한 실시 예에 따른 기지국 연동 노드에 있어서, 상기 기지국의 트래픽량을 감시하는 모니터링 모듈을 더 포함할 수 있다.In the base station interworking node according to a preferred embodiment of the present invention, a monitoring module for monitoring the amount of traffic of the base station may be further included.
더하여, 본 발명은 상술한 과제의 해결 수단으로서, 스트리밍 제공 서버에 있어서, 비디오 데이터의 프레임 압축 타입 정보를 확인하는 단계; 상기 프레임 압축 정보가 포함된 헤더 정보를 생성하는 단계; 및 상기 생성된 헤더 정보를 상기 비디오 데이터와 결합하여 스트리밍 데이터 패킷을 생성하는 단계;를 포함하는 스트리밍 데이터 패킷 제공 방법을 제공할 수 있다.In addition, the present invention provides a means for solving the above-described problems, comprising: checking frame compression type information of video data in a streaming providing server; Generating header information including the frame compression information; And generating a streaming data packet by combining the generated header information with the video data.
본 발명의 바람직한 실시 예에 따른 스트리밍 데이터 패킷 제공 방법은, 상기 스트리밍 데이터 패킷은 MPEG 미디어 트랜스포트(MMT; MPEG Media Transport) 패킷으로 할 수 있다.In a method for providing a streaming data packet according to a preferred embodiment of the present invention, the streaming data packet may be an MPEG Media Transport (MMT) packet.
본 발명의 바람직한 실시 예에 따른 스트리밍 데이터 패킷 제공 방법은, 상기 헤더 정보를 생성하는 단계는 상기 프레임 압축 타입 정보를 상기 IP 헤더의 ToS 필드에 기록할 수 있다.In the method for providing a streaming data packet according to an exemplary embodiment of the present invention, in the generating of the header information, the frame compression type information may be recorded in the ToS field of the IP header.
더하여, 본 발명은 상술한 과제의 해결 수단으로서, 적어도 하나 이상의 기지국과 연결되는 기지국 연동 노드의 스트리밍 데이터 패킷 처리 방법에 있어서, 상기 기지국을 통해 컨텐츠의 스트리밍 서비스를 제공하는 스트리밍 제공 서버로부터 단말로 전송될 스트리밍 데이터 패킷을 수신하는 단계; 상기 수신한 스트리밍 데이터 패킷의 헤더에서 프레임 압축 타입 정보를 분석하는 단계; 및 상기 기지국의 트래픽량에 따라서, 상기 분석된 프레임 압축 타입을 기준으로 상기 수신한 스트리밍 데이터 패킷에 포함된 비디오 데이터를 선별 제거하여 상기 컨텐츠의 프레임 레이트를 조절하는 단계;를 포함하는 기지국 연동 노드를 통한 스트리밍 데이터 패킷 처리 방법을 제공 할 수 있다.In addition, the present invention is a means of solving the above-described problems, in a method for processing a streaming data packet of a base station interworking node connected to at least one base station, transmitting from a streaming providing server providing a streaming service of content through the base station to a terminal Receiving a to-be-streamed data packet; Analyzing frame compression type information in the header of the received streaming data packet; And adjusting the frame rate of the content by selectively removing video data included in the received streaming data packet based on the analyzed frame compression type based on the analyzed frame compression type according to the traffic volume of the base station. It can provide a method for processing streaming data packets through.
본 발명의 바람직한 실시 예에 따른 스트리밍 데이터 패킷 처리 방법은, 상기 스트리밍 데이터 패킷은 MPEG 미디어 트랜스포트(MMT; MPEG Media Transport) 패킷으로 할 수 있다.In the streaming data packet processing method according to the preferred embodiment of the present invention, the streaming data packet may be an MPEG Media Transport (MMT) packet.
본 발명의 바람직한 실시 예에 따른 스트리밍 데이터 패킷 처리 방법은, 상기 스트리밍 데이터 패킷은 1 프레임 단위의 비디오 데이터를 포함한다.In a streaming data packet processing method according to a preferred embodiment of the present invention, the streaming data packet includes video data in units of one frame.
본 발명의 바람직한 실시 예에 따른 스트리밍 데이터 패킷 처리 방법은, 상기 제거하는 단계는 I, B, P 타입의 프레임 압축 타입 중, B 또는 P 타입의 비디오 데이터를 일정 비율로 제거할 수 있다.In the streaming data packet processing method according to an exemplary embodiment of the present invention, the removing step may remove B or P type video data from among I, B, and P type frame compression types at a predetermined ratio.
본 발명의 바람직한 실시 예에 따른 스트리밍 데이터 패킷 처리 방법은, 상기 분석하는 단계는 상기 헤더의 ToS(Type of Service) 필드로부터 상기 프레임 압축 타입 정보를 분석할 수 있다.In the streaming data packet processing method according to an exemplary embodiment of the present invention, the analyzing may analyze the frame compression type information from the ToS (Type of Service) field of the header.
본 발명의 바람직한 실시 예에 따른 스트리밍 데이터 패킷 처리 방법은, 상기 컨텐츠의 프레임 레이트를 조절하는 단계는 상기 기지국의 트래픽량에 따라서 프레임 레이트를 결정하는 단계; 및 상기 프레임 레이트에 따라서, 상기 프레임 압축 타입을 기준으로 상기 비디오 데이터의 제거 비율을 설정하는 단계를 포함할 수 있다.
The streaming data packet processing method according to an exemplary embodiment of the present invention includes: determining a frame rate according to the amount of traffic of the base station; And setting a removal rate of the video data based on the frame compression type according to the frame rate.
더하여, 본 발명은 상술한 과제의 해결 수단으로서, 상기 기지국 연동 노드를 통한 스트리밍 데이터 패킷 처리 방법을 실행시키기 위한 프로그램을 기록한 컴퓨터 판독 가능한 기록매체를 제공할 수 있다.In addition, the present invention can provide a computer-readable recording medium in which a program for executing the streaming data packet processing method through the base station interlocking node is recorded as a means of solving the above-described problems.
또한, 본 발명은 상술한 스트리밍 데이터 패킷 처리 방법을 실행시키도록 구현되어 컴퓨터 판독 가능한 기록 매체에 기록된 컴퓨터 프로그램을 제공할 수 있다.In addition, the present invention can provide a computer program recorded in a computer-readable recording medium by implementing the streaming data packet processing method described above.
본 발명은 상기한 종래의 문제점을 해결하기 위해 제안된 것으로서, 특히 MPEG 미디어 트랜스포트(MMT; MPEG Media Transport) 기술을 이용하고 트래픽량에 따라서 적응적으로 스트리밍 콘텐츠를 제공하는 스트리밍 제공 서버와 기지국 연동 노드를 통한 스트리밍 데이터 패킷 제공 방법, 이를 위한 기지국 연동 노드 을 제공할 수 있다.The present invention has been proposed to solve the above-described conventional problem, and in particular, interworking with a streaming service server and a base station that uses MPEG Media Transport (MMT) technology and provides streaming content adaptively according to traffic volume. A method of providing streaming data packets through a node, and a base station interworking node for this can be provided.
이로 인해, 본 발명은 다양한 미디어 서비스 수요가 발생함에 따라서, 고화질 미디어 콘텐츠 서비스 증가, 스포츠 경기와 같은 이벤트 발생시 급증하는 수요 증가로 인한 기지국에서 트래픽이 과부하 되는 문제를 해결하여 효율적인 서비스를 제공할 수 있고, 콘텐츠 수요자의 QoE(Quality of Experience)가 증가할 수 있다.For this reason, the present invention solves the problem that traffic is overloaded at the base station due to an increase in demand for high-definition media content services and an event such as a sports event, which increases rapidly when various media service demands occur, thereby providing efficient services. , Content consumers' QoE (Quality of Experience) may increase.
아울러, 상술한 효과 이외의 다양한 효과들이 후술될 본 발명의 실시 예에 따른 상세한 설명에서 직접적 또는 암시적으로 개시될 수 있다.In addition, various effects other than the above-described effects may be directly or implicitly disclosed in the detailed description according to an embodiment of the present invention to be described later.
도 1은 본 발명의 실시 예에 따른 스트리밍 제공 서버와 기지국 연동 노드를 통한 스트리밍 데이터 패킷 제공 방법이 적용된 시스템의 구성을 개략적으로 도시한 구성도이다.
도 2는 본 발명의 실시 예에 따른 기지국 연동 노드의 주요 구성을 도시한 블록도이다.
도 3은 본 발명의 실시 예에 따른 스트리밍 제공 서버의 주요 구성을 도시한 블록도이다.
도 4는 본 발명의 실시 예에 따른 스트리밍 데이터 패킷의 헤더 구조도이다.
도 5는 스트리밍 제공 서버와 기지국 연동 노드를 통한 스트리밍 데이터 패킷 제공 방법이 적용된 시스템에서의 서비스 수행 과정을 나타낸 순서도이다.
도 6은 상술한 스트리밍 제공 서버와 기지국 연동 노드를 통한 스트리밍 데이터 패킷 제공 방법이 적용된 시스템에 있어서, 본 발명의 실시 예에 따른 스트리밍 제공 서버에서 스트리밍 데이터 패킷 제공방법을 나타낸 순서도이다.
도 7은 상술한 스트리밍 제공 서버와 기지국 연동 노드를 통한 스트리밍 데이터 패킷 제공 방법이 적용된 시스템에 있어서, 본 발명의 실시 예에 따른 기지국 연동 노드에서 스트리밍 데이터 패킷 처리방법을 나타낸 순서도이다.
도 8은 본 발명의 실시 예들에 따른 스트리밍 데이터 패킷을 단말로 제공할 경우 트래픽량에 따라서 단말로 제공되는 스트리밍 데이터 패킷을 시간축상에 나타낸 그래프이다.1 is a block diagram schematically illustrating a configuration of a system to which a method for providing streaming data packets through a streaming providing server and a base station interworking node according to an embodiment of the present invention is applied.
2 is a block diagram showing a main configuration of a base station interworking node according to an embodiment of the present invention.
3 is a block diagram showing a main configuration of a streaming providing server according to an embodiment of the present invention.
4 is a diagram illustrating a header structure of a streaming data packet according to an embodiment of the present invention.
5 is a flowchart illustrating a service execution process in a system to which a method for providing streaming data packets through a streaming providing server and a base station interworking node is applied.
6 is a flowchart illustrating a method of providing a streaming data packet in a streaming providing server according to an embodiment of the present invention in a system to which the streaming providing server and the method of providing a streaming data packet through a base station interworking node are applied.
7 is a flowchart illustrating a method of processing a streaming data packet in a base station interworking node according to an embodiment of the present invention in a system to which the above-described method of providing streaming data packets through a streaming providing server and a base station interworking node is applied.
FIG. 8 is a graph showing streaming data packets provided to a terminal according to a traffic amount on a time axis when a streaming data packet according to embodiments of the present invention is provided to a terminal.
본 발명의 과제 해결 수단의 특징 및 이점을 보다 명확히 하기 위하여, 첨부된 도면에 도시된 본 발명의 특정 실시 예를 참조하여 본 발명을 더 상세하게 설명한다.In order to clarify the features and advantages of the problem solving means of the present invention, the present invention will be described in more detail with reference to specific embodiments of the present invention shown in the accompanying drawings.
다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다.However, in the following description and the accompanying drawings, detailed descriptions of known functions or configurations that may obscure the subject matter of the present invention will be omitted. In addition, it should be noted that the same components are indicated by the same reference numerals as possible throughout the drawings.
이하의 설명 및 도면에서 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위한 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시 예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시 예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.The terms or words used in the following description and drawings should not be construed as being limited to their usual or dictionary meanings, and the inventor may appropriately define the concept of terms for describing his or her invention in the best way. It should be interpreted as a meaning and concept consistent with the technical idea of the present invention based on the principle that there is. Therefore, the embodiments described in the present specification and the configurations shown in the drawings are only the most preferred embodiments of the present invention, and do not represent all the technical ideas of the present invention, and thus various alternatives that can be substituted for them at the time of application It should be understood that there may be equivalents and variations.
또한, 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하기 위해 사용하는 것으로, 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용될 뿐, 상기 구성요소들을 한정하기 위해 사용되지 않는다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제2 구성요소는 제1 구성요소로 명명될 수 있고, 유사하게 제1 구성요소도 제2 구성요소로 명명될 수 있다.In addition, terms including ordinal numbers such as first and second are used to describe various elements, and are only used for the purpose of distinguishing one element from other elements, and to limit the elements. Not used. For example, without departing from the scope of the present invention, a second component may be referred to as a first component, and similarly, a first component may be referred to as a second component.
더하여, 어떤 구성요소가 다른 구성요소에 "연결되어" 있다거나 "접속되어" 있다고 언급할 경우, 이는 논리적 또는 물리적으로 연결되거나, 접속될 수 있음을 의미한다. 다시 말해, 구성요소가 다른 구성요소에 직접적으로 연결되거나 접속되어 있을 수 있지만, 중간에 다른 구성요소가 존재할 수도 있으며, 간접적으로 연결되거나 접속될 수도 있다고 이해되어야 할 것이다.In addition, when a component is referred to as being "connected" or "connected" to another component, it means that it is logically or physically connected or can be connected. In other words, it should be understood that a component may be directly connected or connected to another component, but another component may exist in the middle, or may be indirectly connected or connected.
또한, 본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, 본 명세서에서 기술되는 "포함 한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.In addition, terms used in the present specification are only used to describe specific embodiments, and are not intended to limit the present invention. Singular expressions include plural expressions unless the context clearly indicates otherwise. In addition, terms such as "comprises" or "have" described herein are intended to designate the presence of features, numbers, steps, actions, components, parts, or a combination thereof described in the specification. It is to be understood that the above other features, or the possibility of the presence or addition of numbers, steps, actions, components, parts, or combinations thereof, are not preliminarily excluded.
아울러, 본 발명의 범위 내의 실시 예들은 컴퓨터 실행가능 명령어 또는 컴퓨터 판독가능 매체에 저장된 데이터 구조를 가지거나 전달하는 컴퓨터 판독가능 매체를 포함한다. 이러한 컴퓨터 판독가능 매체는, 범용 또는 특수 목적의 컴퓨터 시스템에 의해 액세스 가능한 임의의 이용 가능한 매체일 수 있다. 예로서, 이러한 컴퓨터 판독가능 매체는 RAM, ROM, EPROM, CD-ROM 또는 기타 광 디스크 저장장치, 자기 디스크 저장장치 또는 기타 자기 저장장치, 또는 컴퓨터 실행가능 명령어, 컴퓨터 판독가능 명령어 또는 데이터 구조의 형태로 된 소정의 프로그램 코드 수단을 저장하거나 전달하는 데에 이용될 수 있고, 범용 또는 특수 목적 컴퓨터 시스템에 의해 액세스 될 수 있는 임의의 기타 매체와 같은 물리적 저장 매체를 포함할 수 있지만, 이에 한정되지 않는다.In addition, embodiments within the scope of the present invention include computer-readable media having or transferring computer-executable instructions or data structures stored in the computer-readable media. Such computer-readable media may be any available media accessible by a general purpose or special purpose computer system. By way of example, such computer readable media may be in the form of RAM, ROM, EPROM, CD-ROM or other optical disk storage, magnetic disk storage or other magnetic storage, or computer executable instructions, computer readable instructions, or data structures. It may include, but is not limited to, physical storage media such as any other media that may be used to store or deliver certain program code means, and may be accessed by a general purpose or special purpose computer system. .
이하의 설명 및 특허 청구 범위에서, "네트워크" 또는 "통신망"은 컴퓨터 시스템들 및/또는 모듈들 간의 전자 데이터를 전송할 수 있게 하는 하나 이상의 데이터 링크로서 정의된다. 정보가 네트워크 또는 다른 (유선, 무선, 또는 유선 또는 무선의 조합인) 통신 접속을 통하여 컴퓨터 시스템에 전송되거나 제공될 때, 이 접속은 컴퓨터-판독가능매체로서 이해될 수 있다. 컴퓨터 판독가능 명령어는, 예를 들면, 범용 컴퓨터 시스템 또는 특수 목적 컴퓨터 시스템이 특정 기능 또는 기능의 그룹을 수행하도록 하는 명령어 및 데이터를 포함한다. 컴퓨터 실행가능 명령어는, 예를 들면, 어셈블리어, 또는 심지어는 소스코드와 같은 이진, 중간 포맷 명령어일 수 있다.In the description and claims that follow, a “network” or “communication network” is defined as one or more data links that enable the transfer of electronic data between computer systems and/or modules. When information is transmitted or provided to a computer system through a network or other (wired, wireless, or a combination of wired or wireless) communication connection, this connection can be understood as a computer-readable medium. Computer-readable instructions include, for example, instructions and data that cause a general purpose computer system or a special purpose computer system to perform a specific function or group of functions. Computer-executable instructions may be, for example, assembly language, or even binary, intermediate format instructions such as source code.
아울러, 본 발명은 퍼스널 컴퓨터, 랩탑 컴퓨터, 핸드헬드 장치, 멀티프로세서 시스템, 마이크로프로세서-기반 또는 프로그램 가능한 가전제품(programmable consumer electronics), 네트워크 PC, 미니컴퓨터, 메인프레임 컴퓨터, 모바일 전화, PDA, 페이저(pager) 등을 포함하는 다양한 유형의 컴퓨터 시스템 구성을 가지는 네트워크 컴퓨팅 환경에서 실시될 수 있다. In addition, the present invention relates to a personal computer, a laptop computer, a handheld device, a multiprocessor system, a microprocessor-based or programmable consumer electronics, a network PC, a minicomputer, a mainframe computer, a mobile phone, a PDA, a pager. It can be implemented in a network computing environment having various types of computer system configurations including (pager) and the like.
본 발명은 또한 네트워크를 통해 유선 데이터 링크, 무선 데이터 링크, 또는 유선 및 무선 데이터 링크의 조합으로 링크된 로컬 및 원격 컴퓨터 시스템 모두가 태스크를 수행하는 분산형 시스템 환경에서 실행될 수 있다. 분산형 시스템 환경에서, 프로그램 모듈은 로컬 및 원격 메모리 저장 장치에 위치될 수 있다.The invention may also be practiced in a distributed system environment where both local and remote computer systems linked through a network with a wired data link, a wireless data link, or a combination of wired and wireless data links perform tasks. In a distributed system environment, program modules may be located in local and remote memory storage devices.
본 발명의 실시 예를 설명하기에 앞서, 본 발명의 기술적 배경은 MPEG MMT(MPEG Media Transport) 기술인 것을 가정하여 설명하도록 한다. 그러나, 이는 설명의 편의를 위한 예시일 뿐, 본 발명이 반드시 MMT 기술에만 적용되는 것은 아니다. Prior to describing the embodiments of the present invention, it is assumed that the technical background of the present invention is MPEG MMT (MPEG Media Transport) technology. However, this is only an example for convenience of description, and the present invention is not necessarily applied to MMT technology.
이하 본 명세서에서 기술하는 용어의 의미는 다음과 같이 정의할 수 있다. Hereinafter, the meaning of the terms described in the present specification may be defined as follows.
컨텐츠 컴포넌트(content component) 또는 미디어 컴포넌트(media component)는 단일 종류의 미디어(media of a single type) 또는 단일 종류의 미디어의 부분 집합(subset of the media of a single type)으로 정의되며, 예를 들어, 비디오 트랙(video track), 영화 자막(movie subtitles), 또는 비디오 향상계층(enhancement layer of video)이 될 수 있다.A content component or media component is defined as a media of a single type or a subset of the media of a single type, for example , A video track, movie subtitles, or an enhancement layer of video.
컨텐츠(content)는 컨텐츠 컴포넌트의 집합으로 정의하며, 예를 들어 영화(movie), 노래(song)등이 될 수 있다.Content is defined as a set of content components, and may be, for example, a movie or a song.
이하, 본 발명의 실시 예에 따른 스트리밍 콘텐츠 제공 방법이 적용된 시스템의 구조에 대해 먼저 설명하도록 한다.Hereinafter, a structure of a system to which a method for providing streaming content according to an embodiment of the present invention is applied will be described first.
도 1은 본 발명의 실시 예에 따른 스트리밍 제공 서버와 기지국 연동 노드를 통한 스트리밍 데이터 패킷 제공 방법이 적용된 시스템의 구성을 개략적으로 도시한 구성도이다.1 is a block diagram schematically showing the configuration of a system to which a method for providing streaming data packets through a streaming providing server and a base station interworking node according to an embodiment of the present invention is applied.
도 1을 참조하면, 본 발명의 실시 예에 따른 시스템(100)은 다수의 단말(10)과 접속망(20) 및 코어망(50) 그리고 인터넷망(60)을 거쳐 다수의 단말(10)로 스트리밍 데이터 서비스를 제공하는 스트리밍 제공 서버(70)를 포함하여 구성될 수 있다. 특히, 본 발명의 실시 예에 따른 시스템(100)은 인터넷망(60)에 위치한 스트리밍 제공 서버(70)와 접속망(20)에 위치한 적어도 하나 이상의 기지국(30)과 연동 가능한 기지국 연동 노드(40)를 포함하는 것에 그 기술적 특징이 있다.Referring to FIG. 1, a
각 구성 요소에 대해 보다 구체적으로 설명하면, 먼저, 단말(10)은 사용자의 조작에 따라 통신망, 즉 접속망(20), 코어망(50) 및 인터넷망(60)을 거쳐 스트리밍 제공 서버(70)와 정보를 송수신할 수 있는 사용자의 장치를 의미한다. 이러한 단말(10)은 접속망(20), 코어망(50) 및 인터넷망(60)을 통해 음성 또는 데이터 통신을 수행할 수 있다. 이를 위한 본 발명의 단말(10)은 정보의 송수신을 위한 브라우저, 프로그램 및 프로토콜을 저장하는 메모리, 각종 프로그램을 실행하여 연산 및 제어하기 위한 마이크로프로세서 등을 구비할 수 있다. 특히, 본 발명의 실시 예에 따른 단말(10)은 스트리밍 제공 서버(70)로부터 전달되는 스트리밍 데이터, 특히 MPEG 미디어 트랜스포트 스트리밍 데이터(이하, '스트리밍 데이터'로 지칭하도록 함)를 재생하고 처리할 수 있는 단말(10)을 의미할 수 있다.When describing each component in more detail, first, the terminal 10 is a
이러한 본 발명의 실시 예에 따른 단말(10)은 다양한 형태로 구현될 수 있다. 예를 들어, 본 명세서에서 기술되는 단말(10)은 스마트 폰(smart phone), 타블렛 PC(Tablet PC), PDA(Personal Digital Assistants), PMP(Portable Multimedia Player), MP3 Player 등의 이동 단말기는 물론, 스마트 TV(Smart TV), 데스크탑 컴퓨터 등과 같은 고정 단말기가 사용될 수도 있다.The terminal 10 according to an embodiment of the present invention may be implemented in various forms. For example, the terminal 10 described in this specification is a mobile terminal such as a smart phone, a tablet PC, a personal digital assistant (PDA), a portable multimedia player (PMP), an MP3 player, etc. , A fixed terminal such as a smart TV or a desktop computer may be used.
이러한 본 발명의 단말(10)은 디지털 기기의 컨버전스(convergence) 추세에 따라 휴대 기기의 변형이 매우 다양하여 모두 열거할 수는 없으나, 상기 언급된 유닛들과 동등한 수준의 유닛이 본 발명에 따른 단말(10)로 적용될 수 있으며, 특히, 접속망(20), 코어망(50) 및 인터넷망(60)을 거쳐 스트리밍 제공 서버(70)와 정보를 송수신하고, 스트리밍 제공 서버(70)로부터 전달되는 스트리밍 데이터를 재생하고 처리할 수 있는 장치라면, 그 어떠한 장치도 본 발명의 실시 예에 따른 단말(10)로 이용될 수 있다.In the
접속망(20)은 단말(10)의 코어망(50)으로의 접근을 지원하는 것으로, 유무선 통신 방식에 따라 단말(10)의 코어망(50) 접근을 지원할 수 있다. 이러한 접속망(20)은 복수의 기지국(30)을 포함할 수 있다. 여기서, 기지국(30)은 예를 들어, BS(Base Station), BTS(Base Transceiver Station), NodeB, eNodeB 등과 같은 다수의 기지국을 포함하는 개념이 될 수 있으며, 기지국과 BSC(Base Station Controller), RNC(Radio Network Controller)와 같은 기지국 제어기 모두를 포함하는 개념이 될 수 있다. 여기서, 기지국(30)은 기지국에 일체로 구현되어 있던 디지털 신호 처리부와 무선 신호 처리부를 각각 디지털 유니트(Digital Unit, 이하 DU라 함)과 무선 유니트(Radio Unit, 이하 RU라 함)으로 구분하여, 다수의 영역에 각각 다수의 RU(미도시)를 설치하고, 다수의 RU(미도시)를 집중화된 DU(미도시)와 연결하여 구성할 수도 있다.The
접속망(20)과 함께 통신망을 구성하는 코어망(50)은 접속망(20)과 외부 망, 예컨대, 인터넷망(60)을 연결하는 역할을 수행할 수 있다.The
이러한 코어망(50)은 앞서 설명한 바와 같이, 접속망(20) 간의 이동성 제어 및 스위칭 등의 이동통신 서비스를 위한 주요 기능을 수행하는 네트워크 시스템으로서, 서킷 교환(circuit switching) 또는 패킷 교환(packet switching)을 수행하며, 네트워크 내에서의 패킷 흐름을 관리 및 제어한다. 또한, 코어망(50)은 주파수간 이동성을 관리하고, 접속망(20) 및 코어망(50) 내의 트래픽 및 다른 네트워크, 예컨대 인터넷망(60)과의 연동을 위한 역할을 수행할 수도 있다. 이러한 코어망(50)은 SGW(Serving GateWay), PGW(PDN GateWay), MSC(Mobile Switching Center), HLR(Home Location Register), MME(Mobile Mobility Entity)와 HSS(Home Subscriber Server) 등을 더 포함하여 구성될 수도 있다.As described above, the
또한, 인터넷망(60)은 TCP/IP 프로토콜에 따라서 정보가 교환되는 통상의 공개된 통신망, 즉 공용망을 의미하는 것으로, 스트리밍 제공 서버(70)와 연결되며, 스트리밍 제공 서버(70)로부터 단말(10)로 전달되는 스트리밍 데이터를 코어망(50) 및 접속망(20)을 거쳐 단말(10)로 제공되도록 지원하는 역할을 수행할 수 있다. 반면, 단말(10)은 접속망(20) 및 코어망(50) 그리고 인터넷망(60)을 거쳐 스트리밍 제공 서버(70)로 스트리밍 데이터 수신을 위한 각종 명령을 전송할 수 있다. 그러나, 이에 한정되는 것은 아니며, 스트리밍 제공 서버(70)은 코어망(50) 내에 위치할 수 있으며, 코어망(50)을 운용하는 사업자와 동일한 사업자 또는 서로 다른 사업자에 의해 운용될 수도 있다. In addition, the
아울러, 본 발명의 네트워크가 접속망(20), 코어망(50) 및 인터넷망(60)으로 구현되는 것을 예로 들어 설명하였으나, 이에 한정되는 것은 아니며, 상술한 통신 방식 이외에도 기타 널리 공지되었거나 향후 개발될 모든 형태의 통신 방식을 포함할 수 있다.In addition, the network of the present invention has been described as an example that is implemented with the
스트리밍 제공 서버(70)는 본 발명의 실시 예에 따른 스트리밍 데이터 패킷을 단말(10)의 요청에 따라 단말(10)로 전달하는 역할을 수행할 수 있다.The
아울러, 도면에는 도시하지 않았으나, 본 발명의 시스템(100)은 컨텐츠 제공 서버(미도시)를 더 포함하여 구성될 수 있으며, 스트리밍 제공 서버(70)는 컨텐츠 제공 서버(미도시)로부터 전달되는 비디오 데이터를 스트리밍 데이터 패킷으로 변환 처리하여 단말(10)로 전달할 수도 있다.In addition, although not shown in the drawings, the
여기서, 스트리밍 제공 서버(70)는 프레임 단위로 비디오 데이터를 입력 받을 수 있고, 입력된 비디오 데이터의 프레임 압축 타입 정보를 확인 할 수 있고, 확인된 프레임 압축 타입 정보가 포함된 헤더 정보를 생성 할 수 있고, 상기 헤더 정보와 상기 비디오 데이터를 결합하여 스트리밍 데이터 패킷을 생성 할 수 있다. 여기서, 헤더는 IP 헤더가 될 수 있다.Here, the
여기서, 스트리밍 데이터 패킷은 비디오 데이터/오디오 데이터를 소정의 단위로 분할하여 패킷화한 후 스트리밍 방식으로 전송하는 것으로서, 특히, 하나의 스트리밍 데이터 패킷은 1 프레임 단위의 비디오 데이터로 구성될 수 있다. 예를 들어, 스트리밍 데이터 패킷은 1프레임 단위로 생성된 MMT 패킷에 IP 헤더를 결합하여 이루어질 수 있다. 이때, 프레임 압축 타입 정보는 상기 IP 헤더의 ToS 필드에 기록될 수 있다.Here, the streaming data packet is packetized by dividing video data/audio data into a predetermined unit and then transmitted in a streaming method. In particular, one streaming data packet may be composed of video data in units of one frame. For example, the streaming data packet may be formed by combining an IP header with an MMT packet generated in units of one frame. In this case, the frame compression type information may be recorded in the ToS field of the IP header.
기지국 연동 노드(40)는 접속망(20) 및 코어망(50) 사이에 위치하며, 접속망(20) 및 코어망(50) 사이의 트래픽량을 감시할 수 있고, 트래픽량에 따라서 접속망으로 전송될 프레임의 프레임 레이트를 결정할 수 있고, 스트리밍 제공 서버(70)로부터 수신된 스트리밍 데이터 패킷의 헤더, 구체적으로 IP 헤더에서 프레임 압축 타입 정보를 분석 할 수 있고, 상기 프레임 레이트에 따라서 프레임 압축 타입 기준으로 접속망으로 전송될 스트리밍 데이터 패킷에 포함된 비디오 데이터를 제거 할 수 있다. 여기서, 본 발명의 스트리밍 데이터 패킷은 MPEG 미디어 트랜스포트 스트리밍 데이터를 의미할 수 있다. The base
상술한 바와 같은 본 발명을 구성하는 기지국 연동 노드(40) 및 스트리밍 제공 서버(70)의 주요 구성 및 보다 구체적인 동작 방법에 대해서는 후술하여 설명하도록 하며, 본 발명의 실시 예에 따른 각 장치에 탑재되는 프로세서는 본 발명에 따른 방법을 실행하기 위한 프로그램 명령을 처리할 수 있다. 일 구현 예에서, 이 프로세서는 싱글 쓰레드(Single-threaded) 프로세서일 수 있으며, 다른 구현 예에서 본 프로세서는 멀티 쓰레드(Multithreaded) 프로세서일 수 있다. 나아가 본 프로세서는 메모리 혹은 저장 장치 상에 저장된 명령을 처리하는 것이 가능하다.The main configurations and more specific operation methods of the base
이하, 본 발명의 실시 예에 따른 기지국 연동 노드(50)의 주요 구성 및 동작 방법에 대해 설명하도록 한다.Hereinafter, the main configuration and operation method of the base
도 2는 본 발명의 실시 예에 따른 기지국 연동 노드의 주요 구성을 도시한 블록도이다.2 is a block diagram showing a main configuration of a base station interworking node according to an embodiment of the present invention.
도 2를 참조하면, 본 발명의 실시 예에 따른 기지국 연동 노드(40)는 인터페이스부(41), 분석모듈(42), 미디어 처리 모듈(43) 및 모니터링 모듈(44)을 포함하여 구성될 수 있다.2, the base
이하, 본 발명의 각 구성을 보다 구체적으로 설명하면, 먼저, 인터페이스부(41)는 정보의 송수신을 지원한다. 특히, 인터페이스부(41)는 관리자 장치(미도시)와 정보를 송수신하며, 본 발명의 스트리밍 데이터 패킷 처리 방법을 수행하기 위한 다양한 정보를 전달받아 미디어 처리 모듈(43)으로 전달할 수 있다. 예컨대, 본 발명의 기지국의 혼잡상태에 관한 트래픽량에 대한 정보, 트래픽량에 따라서 결정될 프레임 레이트에 관한 정보 또는 프레임 압축 타입 정보를 관리자 장치(미도시)로부터 전달받을 수 있다. 그리고, 인터페이스부(41)는 관리 장치(미도시)로 이에 대한 응답 정보를 전송할 수 있다. 여기서 관리자 장치(미도시)는 스트리밍 제공 서버(70)가 될 수 있으며, 스트리밍 제공 서버(70)와 운용 주체가 상이한 별도의 서버가 될 수도 있다.Hereinafter, each configuration of the present invention will be described in more detail. First, the
아울러, 본 발명의 실시 예에 따른 인터페이스부(41)는 접속망(20)의 기지국(30)과 코어망(50) 중간에 위치하고 있는 상태에서 스트리밍 제공 서버(70)가 기지국(30)에 연결된 단말(10)로 전달하는 스트리밍 데이터 패킷을 수집하여 미디어 처리 모듈(43)로 전달하는 역할을 수행할 수 있다. 그리고 미디어 처리 모듈(43)의 제어에 따라, 스트리밍 데이터 패킷 중 제거 되지 않은 스트리밍 데이터 패킷을 단말(10)로 전달되도록 제어하는 역할을 수행할 수 있다.In addition, the
분석모듈(42)는 스트리밍 제공 서버로부터 단말로 전달되는 스트리밍 데이터 패킷의 헤더를 분석하여, 상기 스트리밍 데이터 패킷에 포함된 비디오 데이터의 프레임 압축 타입 정보를 분석할 수 있다. The
예를 들어, 분석모듈(42)는 스트리밍 제공 서버(70)에서 기록한 상기 헤더의 ToS(Type of Service) 필드로부터 상기 프레임 압축 타입 정보를 분석할 수 있다. 이에 대한 구체적인 설명은 도 4에서 설명한다.For example, the
미디어 처리 모듈(43)은 기지국의 트래픽량에 따라서 분석모듈(42)에서 분석한 프레임 압축 타입 정보를 기준으로 스트리밍 제공 서버(70)로부터 수신한 스트리밍 데이터 패킷에 포함된 비디오 데이터를 선별 제거하여 해당 컨텐츠의 프레임 레이트를 조절할 수 있다. 여기서, 상기 스트리밍 데이터 패킷에 1 프레임 단위의 비디오 데이터가 포함되고, 상기 헤더의 ToS 필드에 상기 1 프레임 단위의 비디오 데이터에 대한 프레임 압축 타입 정보가 기록될 경우, 상기 비디오 데이터의 제거는 패킷 단위로 이루어지게 된다.The
이때, 미디어 처리 모듈(43)은 기지국의 트래픽량에 따라서 프레임 레이트를 결정하고, 프레임 레이트에 따라서 분석모듈(42)에서 분석한 프레임 압축 타입 정보를 기준으로 상기 비디오 데이터의 제거 비율을 설정할 수 있다.In this case, the
예를 들어, 스트리밍 제공 서버(70)에서 스트리밍 서비스하는 컨텐츠의 프레임 레이트가 기본적으로 30FR(Frame Rate)일 경우, 미디어 처리 모듈(43)은 시스템 관리자가 확인하거나 이하 모니러팅 모듈(44)에서 감시된 트래픽량에 따라서 비디오 데이터를 선별 제거함으로써 프레임 레이트를 20FR 혹은 15FR로 조정할 수 있다. 특히, 분석모듈(42)에서 분석한 I, B, P 타입의 프레임 압축 타입 중, B 또는 P 타입의 프레임 압축 타입의 비디오 데이터를 제거함으로써 단말에서 디코딩 및 재생은 정상적으로 이루어지되, 프레임 레이트만을 조정할 수 있게 한다. For example, when the frame rate of the content streaming service from the
모니터링 모듈(44)은 기지국(30)의 트래픽량을 감시 할 수 있다. 모니터링 모듈(44)은 시스템 관리자의 선택에 따라서 기지국 연동 노드(40)의 구성에 포함 될 수 있다. The
이상으로, 본 발명의 실시 예에 따른 기지국 연동 노드(40)에 대해 설명하였다. In the above, the base
이하, 본 발명의 실시 예에 따른 스트리밍 제공 서버(70)의 주요 구성 및 동작 방법에 대해 설명하도록 한다.Hereinafter, a main configuration and operation method of the
도 3은 본 발명의 실시 예에 따른 스트리밍 제공 서버의 주요 구성을 도시한 블록도이다.3 is a block diagram showing a main configuration of a streaming providing server according to an embodiment of the present invention.
도 3을 참조하면, 서버 통신부(71)는 단말(10)과 정보의 송수신을 지원하는 역할을 수행한다. 예컨대, 서버 통신부(71)는 단말(10)로부터 스트리밍 데이터의 전송 요청을 수신할 수 있으며, 단말(10)로 스트리밍 데이터를 전송할 수 있다. 여기서, 스트리밍 데이터는 하나 이상의 스트리밍 데이터 패킷으로 구성될 수 있다. 서버 통신부(71)는 복수 개의 스트리밍 데이터 패킷을 스트리밍 방식에 따라 순차적으로 하나의 채널을 통해 단말(10)로 전달할 수 있다. 아울러, 서버 통신부(71)가 컨텐츠 제공 서버(미도시)와 정보를 송수신하는 경우, 서버 통신부(71)는 특정 컨텐츠의 제공 요청을 컨텐츠 제공 서버(미도시)로 전송하고, 컨텐츠 제공 서버(미도시)로부터 전달되는 비디오 데이터를 수신할 수도 있다. Referring to FIG. 3, the
서버 제어부(72)는 본 발명의 실시 예에 따른 스트리밍 제공 서버(70)의 전반적인 제어를 수행하는 구성으로, 데이터 패킷 생성 모듈(72a) 및 데이터 패킷 전송 모듈(72b)을 포함하여 구성될 수 있다. The
여기서, 데이터 패킷 생성 모듈(72a)은 스트리밍 데이터 패킷을 생성하는 역할을 수행할 수 있다. 특히, 서버통신부(71)로부터 비디오 데이터를 프레임 단위로 입력 받고, 입력된 비디오 데이터의 프레임 압축 타입 정보를 확인하고, 확인된 프레임 압축 타입 정보가 포함된 헤더 정보를 생성하고, 생성된 헤더 정보와 입력된 비디오 데이터를 결합하여 스트리밍 데이터 패킷을 생성 할 수 있다.Here, the data
아울러, 데이터 패킷 생성 모듈(72a)이 헤더 정보를 생성 할 경우, 프레임 압축 타입 정보를 헤더의 ToS(Type of Service) 필드에 기록할 수 있다.In addition, when the data
또한, 데이터 패킷 생성 모듈(72a)은 MMT 스트리밍 데이터를 생성하는 역할을 수행할 수 있다. 예컨대, 컨텐츠 제공 서버(미도시)로부터 전달되는 컨텐츠를 MMT 프로토콜을 지원하는 스트리밍 데이터 형태로 변환 처리하는 과정을 지원할 수 있다. 이때, 데이터 패킷 생성 모듈(72a)은 MMT 스트리밍 데이터 변환 시, MPU의 블록 크기를 결정하고, 결정된 MPU의 블록 크기에 따라 각 MPU를 구성하여 MMT 기반의 스트리밍 데이터를 생성할 수 있다. 또한 각 MPU별로 재생 타임 정보를 삽입하여, 단말(10)이 이를 동기화하여 재생되도록 필요한 과정을 수행할 수 있다.Also, the data
그리고, 데이터 패킷 전송 모듈(72b)은 스트리밍 데이터를 요청한 단말(10)로 해당 스트리밍 데이터를 전송하는 역할을 수행할 수 있다. 이때, 단말(10)이 요청한 스트리밍 데이터가 복수의 스트리밍 데이터 패킷으로 구성되는 경우, 이를 순차적으로 단말(10)이 수신하도록 제어하는 역할을 수행할 수 있다.In addition, the data
서버 저장부(73)는 본 발명의 실시 예에 따른 스트리밍 제공 서버(70)의 동작 수행에 필요한 각종 정보를 저장하고 관리하는 역할을 수행할 수 있다. The
이상으로 본 발명의 실시 예에 따른 라이브 스트리밍 제공 서버(70)의 주요 구성 및 동작 방법에 대해 설명하였다. The main configuration and operation method of the live
도 4는 본 발명의 실시 예에 따른 스트리밍 데이터 패킷의 헤더 구조도이다.4 is a diagram illustrating a header structure of a streaming data packet according to an embodiment of the present invention.
도 4를 참조하면, 여기서, 헤더는 IP 헤더가 될 수 있다. Type of Service 필드(이하, ToS 필드)(505)는 본 발명의 실시 예에 따른 스트리밍 데이터 패킷에 포함된 비디오 데이터의 프레임 압축 타입 정보를 의미 할 수 있다. 이는 본 발명의 특징 중 하나이다. Referring to FIG. 4, here, the header may be an IP header. The Type of Service field (hereinafter, the ToS field) 505 may mean frame compression type information of video data included in a streaming data packet according to an embodiment of the present invention. This is one of the features of the present invention.
구체적으로, ToS 필드(505)는 보통 서비스의 품질에 관련된 내용을 표현할 수 있으나, 실제 통신 환경에서는 고품질 서비스를 제공 하지 못하기 때문에 기본값으로만 설정되어 있는 경우가 대부분이다. 하지만, 본 발명에서는, 스트리밍 제공 서버(70)가 헤더(500)의 ToS 필드(505)에 비디오 데이터의 프레임 압축 타입 정보를 입력할 수 있다. 기지국 연동 노드(40)는 수신된 스트리밍 데이터 패킷의 헤더(500)의 ToS 필드(505) 정보인 비디오 데이터의 프레임 압축 타입 정보를 분석할 수 있고, 트래픽량에 따라서 분석된 정보를 기준으로 정해진 프레임 레이트에 따라서, 프레임 단위로 비디오 데이터를 선별 제거 할 수 있다.Specifically, the
이상으로 본 발명의 실시 예에 따른 스트리밍 데이터 패킷의 헤더(505) 구조도를 설명하였다.The structure diagram of the
본 발명의 실시 예에 따른 스트리밍 제공 서버(70)는 하드웨어적으로는 통상적인 웹서버(Web Server) 또는 네트워크 서버와 동일한 구성을 하고 있다. 그러나, 소프트웨어적으로는 C, C++, Java, Visual Basic, Visual C 등과 같은 언어를 통하여 구현되는 프로그램 모듈(Module)을 포함한다. The
한편, 본 발명의 각 장치에 탑재되는 메모리는 그 장치 내에서 정보를 저장한다. 일 구현예의 경우, 메모리는 컴퓨터로 판독 가능한 매체이다. 일 구현 예에서, 메모리는 휘발성 메모리 유닛 일 수 있으며, 다른 구현예의 경우, 메모리는 비휘발성 메모리 유닛 일 수도 있다. 일 구현예의 경우, 저장장치는 컴퓨터로 판독 가능한 매체이다. 다양한 서로 다른 구현 예에서, 저장장치는 예컨대 하드디스크 장치, 광학디스크 장치, 혹은 어떤 다른 대용량 저장장치를 포함할 수도 있다.Meanwhile, a memory mounted in each device of the present invention stores information within the device. In one implementation, the memory is a computer-readable medium. In one implementation, the memory may be a volatile memory unit, and in another implementation, the memory may be a non-volatile memory unit. In one implementation, the storage device is a computer-readable medium. In various different implementations, the storage device may include, for example, a hard disk device, an optical disk device, or some other mass storage device.
아울러, 본 발명의 실시 예에서 사용되는 '~모듈'이라는 용어는 소프트웨어 구성요소를 의미하며, '~모듈'은 어떤 역할들을 수행한다. 일 예로서 '~모듈'은 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. 또한, 구성요소들과 '~모듈'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~모듈'들로 결합되거나 추가적인 구성요소들과 '~모듈'들로 더 분리될 수 있다.In addition, the term'~module' used in an embodiment of the present invention refers to a software component, and'~module' performs certain roles. As an example,'~module' refers to components such as software components, object-oriented software components, class components, and task components, processes, functions, properties, procedures, and sub It includes routines, segments of program code, drivers, data, databases, data structures, tables, arrays, and variables. In addition, the components and functions provided in the'~modules' may be combined into a smaller number of components and'~modules' or further separated into additional components and'~modules'.
비록 본 명세서와 도면에서는 예시적인 장치 구성을 기술하고 있지만, 본 명세서에서 설명하는 기능적인 동작과 주제의 구현물들은 다른 유형의 디지털 전자 회로로 구현되거나, 본 명세서에서 개시하는 구조 및 그 구조적인 등가물들을 포함하는 컴퓨터 소프트웨어, 펌웨어 혹은 하드웨어로 구현되거나, 이들 중 하나 이상의 결합으로 구현 가능하다. 본 명세서에서 설명하는 주제의 구현물들은 하나 이상의 컴퓨터 프로그램 제품, 다시 말해 본 발명에 따른 장치의 동작을 제어하기 위하여 혹은 이것에 의한 실행을 위하여 유형의 프로그램 저장매체 상에 인코딩된 컴퓨터 프로그램 명령에 관한 하나 이상의 모듈로서 구현될 수 있다. 컴퓨터로 판독 가능한 매체는 기계로 판독 가능한 저장 장치, 기계로 판독 가능한 저장 기판, 메모리 장치, 기계로 판독 가능한 전파형 신호에 영향을 미치는 물질의 조성물 혹은 이들 중 하나 이상의 조합일 수 있다.Although the present specification and drawings describe exemplary device configurations, the functional operations and implementations of the subject described in this specification may be implemented with other types of digital electronic circuits, or the structures disclosed herein and structural equivalents thereof. It may be implemented with computer software, firmware, or hardware, or may be implemented by a combination of one or more of them. Implementations of the subject matter described in this specification are one or more computer program products, that is, one relating to computer program instructions encoded on a tangible program storage medium for execution by or for controlling the operation of a device according to the invention It can be implemented as the above module. The computer-readable medium may be a machine-readable storage device, a machine-readable storage substrate, a memory device, a composition of materials that affect a machine-readable radio wave signal, or a combination of one or more of them.
이하, 본 발명의 실시 예에 따른 스트리밍 콘튼츠 서비스 시스템에서 스트리밍 데이터 서비스 제공 방법에 대해 설명하도록 한다.Hereinafter, a method of providing a streaming data service in a streaming contents service system according to an embodiment of the present invention will be described.
도 5는 스트리밍 제공 서버와 기지국 연동 노드를 통한 스트리밍 데이터 패킷 제공 방법이 적용된 시스템에서의 서비스 수행 과정을 나타낸 순서도이다.5 is a flowchart illustrating a service execution process in a system to which a method for providing streaming data packets through a streaming providing server and a base station interworking node is applied.
도 5를 참조하면, 기지국 연동 노드(40)는 수시로 기지국에서의 트래픽량을 감시할 수 있다(S101). 구체적으로, 외부의 모니터링 장비를 통해서 감시된 정보를 수신하거나, 기지국 연동 노드(40)의 모니터링 모듈(40)에 의해 트래픽량을 확인할 수 있다.Referring to FIG. 5, the base
이에, 기지국 연동 노드(40)는 트래픽량에 따라서, 단말(10)로 전송될 스트리밍 데이터의 프레임 레이트를 결정할 수 있다(S103).Accordingly, the base
이러한 상태에서 단말(10)은 스트리밍 제공 서버(70)로 스트리밍 데이터 패킷을 요청할 수 있다(S105).In this state, the terminal 10 may request a streaming data packet from the streaming providing server 70 (S105).
이에, 스트리밍 제공 서버(70)는 이하 스트리밍 데이터 패킷 제공 방법에서 설명하듯이 스트리밍 데이터 패킷을 생성할 수 있다(S107). 스트리밍 제공 서버(70)는 생성된 스트리밍 데이터 패킷을 단말(10)로 전송 할 수 있고, 스트리밍 데이터 패킷은 단말(10)에 도달 전 기지국 연동 노드를 거칠 수 있다(S109).Accordingly, the
기지국 연동 노드(40)는 수신된 스트리밍 데이터 패킷의 헤더(500)의 ToS 필드(505) 정보인 비디오 데이터의 프레임 압축 타입 정보를 분석할 수 있다(S111). 이에, 기지국 연동 노드(40)는 트래픽량에 따라서 분석된 정보를 기준으로 정해진 프레임 레이트에 따라서 스트리밍 데이터 패킷에 포함된 비디오 데이터를 제거할 지 결 정 할 수 있다(S113). 기지국 연동 노드(40)는 제거하기로 결정된 비디오 데이터를 제거하고, 제거하지 않은 비디오 데이터가 포함된 스트리밍 데이터 패킷은 단말(10)로 전송할 수 있다(S115, S117). 여기서, 상기 스트리밍 데이터 패킷에 포함된 비디오 데이터가 1 프레임 단위의 비디오 데이터인 경우, 상기 비디오 데이터의 제거에 따라서, 해당 스트리밍 데이터 패킷이 드롭(drop)된다.The base
이때, 상기 비디오 데이터의 제거는 특정 컨텐츠 별로, 즉, 특정 컨텐츠가 전송되는 플로우 별로 일정 비율로 이루어질 수 있다. 이를 위해서, 상기 기지국 연동 노드(40)는 수신한 스트리밍 데이터 패킷의 플로우 정보를 더 확인하고, 특정 플로우 내에서 전송되는 스트리밍 데이터 패킷에 대해서 프레임 단위의 비디오 데이터를 일정 비율로 제거할 수 있다.In this case, the removal of the video data may be performed at a certain rate for each specific content, that is, for each flow through which the specific content is transmitted. To this end, the base
이상으로 본 발명의 실시 예에 따른 스트리밍 제공 서버와 기지국 연동 노드를 통한 스트리밍 데이터 패킷 제공 방법에 대해 설명하였다.As described above, a method of providing streaming data packets through a streaming providing server and a base station interworking node according to an embodiment of the present invention has been described.
이하, 본 발명의 실시 예에 따른 스트리밍 제공 서버를 통한 스트리밍 데이터 패킷 제공 방법에 대해 설명하도록 한다.Hereinafter, a method of providing a streaming data packet through a streaming providing server according to an embodiment of the present invention will be described.
도 6은 상술한 스트리밍 제공 서버와 기지국 연동 노드를 통한 스트리밍 데이터 패킷 제공 방법이 적용된 시스템에 있어서, 본 발명의 실시 예에 따른 스트리밍 제공 서버에서 스트리밍 데이터 패킷 제공방법을 나타낸 순서도이다.6 is a flowchart illustrating a method of providing a streaming data packet in a streaming providing server according to an embodiment of the present invention in a system to which the streaming providing server and the method of providing a streaming data packet through a base station interworking node are applied.
도 6을 참조하면, 스트리밍 제공 서버(70)는 프레임 단위로 비디오 데이터를 입력 받을 있다(S201). 이때 상기 비디오 데이터는 프레임 단위로 패킷화된 MMT 패킷일 수 있다. 아울러, 스트리밍 제공 서버(70)는 입력된 비디오 데이터의 프레임 압축 타입 정보를 확인 할 수 있다(S203).Referring to FIG. 6, the
이에, 스트리밍 제공 서버(70)는 확인된 프레임 압축 타입 정보를 포함하여 스트리밍 데이터 패킷의 헤더 정보(500)를 생성 할 수 있다(S205). 특히, 스트리밍 제공 서버(70)는 헤더 정보(500) 생성시 프레임 압축 타입 정보를 헤더(500)의 ToS필드(505)에 기록 할 수 있다. 이때, 헤더는 IP 헤더일 수 있다.Accordingly, the
이에, 스트리밍 제공 서버(70)는 생성된 스트리밍 데이터 패킷의 헤더 정보(500)와 입력된 비디오 데이터를 결합하여 스트리밍 데이터 패킷을 생성 할 수 있다(S207). 특히, 스트리밍 데이터 패킷은 MPEG 미디어 트랜스포트(MMT; MPEG Media Transport) 패킷일 수 있다.Accordingly, the
마지막으로, 스트리밍 제공 서버(70)는 생성된 스트리밍 데이터 패킷을 단말(10)로 전송 할 수 있다(S209).Finally, the
이상으로 본 발명의 실시 예에 따른 스트리밍 제공 서버를 통한 스트리밍 데이터 패킷 제공 방법에 대해 설명하였다.In the above, a method of providing a streaming data packet through a streaming providing server according to an embodiment of the present invention has been described.
이하, 본 발명의 실시 예에 따른 기지국 연동 노드에서 스트리밍 데이터 패킷 처리방법에 대해 설명하도록 한다.Hereinafter, a method of processing a streaming data packet in a base station interworking node according to an embodiment of the present invention will be described.
도 7은 상술한 스트리밍 제공 서버와 기지국 연동 노드를 통한 스트리밍 데이터 패킷 제공 방법이 적용된 시스템에 있어서, 본 발명의 실시 예에 따른 기지국 연동 노드에서 스트리밍 데이터 패킷 처리방법을 나타낸 순서도이다.7 is a flowchart illustrating a method of processing a streaming data packet in a base station interworking node according to an embodiment of the present invention in a system to which the above-described method of providing streaming data packets through a streaming providing server and a base station interworking node is applied.
도 7를 참조하면, 기지국 연동 노드(40)는 수시로 기지국에서의 트래픽량을 감시할 수 있다(S301). 구체적으로, 외부의 모니터링 장비를 통해서 감시된 정보를 수신하거나, 기지국 연동 노드(40)의 모니터링 모듈(40)에 의해 트래픽량을 확인할 수 있다.Referring to FIG. 7, the base
이에, 기지국 연동 노드(40)는 트래픽량에 따라서, 단말(10)로 전송될 스트리밍 데이터의 프레임 레이트를 결정할 수 있다(S303). 예를 들어, 스트리밍 제공 서버(70)에서 전송하는 스트리밍 데이터의 프레임 레이트가 기본적으로 30FR(Frame Rate)일 경우, 미디어 처리 모듈(43)은 시스템 관리자가 확인하거나 이하 모니러팅 모듈(44)에서 감시된 트래픽량에 따라서 프레임 레이트를 20FR 혹은 15FR로 결정할 수 있다.Accordingly, the base
아울러, 기지국 연동 노드(40)는 스트리밍 제공 서버에서 전송된 스트리밍 데이터 패킷을 수신할 수 있다(S305). 특히, 스트리밍 데이터 패킷은 1 프레임 단위로 기지국 연동 노드(40)으로 전송될 수 있다. 또한, 스트리밍 데이터 패킷은 MPEG 미디어 트랜스포트(MMT; MPEG Media Transport) 패킷일 수 있다.In addition, the base
이에, 기지국 연동 노드(40)는 수신된 스트리밍 데이터 패킷의 헤더(500)의 ToS 필드(505) 정보인 비디오 데이터의 프레임 압축 타입 정보를 분석할 수 있다(S307). 이때, 헤더는 IP 헤더일 수 있다.Accordingly, the base
이에, 기지국 연동 노드(40)는 트래픽량에 따라서 분석된 정보를 기준으로 정해진 프레임 레이트에 따라서 스트리밍 데이터 패킷을 제거할 지 결정 할 수 있다(S309). 기지국 연동 노드(40)는 제거하기로 결정된 스트리밍 데이터 패킷을 제거하고 제거하지 않은 스트리밍 데이터 패킷은 단말(10)로 전송할 수 있다(S311, S313). 예를 들어, 기지국 연동 노드(40)에서 분석한 I, B, P 타입의 프레임 압축 타입 중, B 또는 P 타입의 프레임 압축 타입의 스트리밍 데이터 패킷을 제거하여 단말로 제공되는 컨텐츠의 프레임 레이트를 20FR 혹은 15FR으로 하여 전달할 수 있게 한다.Accordingly, the base
이상으로 본 발명의 실시 예에 따른 기지국 연동 노드에서 스트리밍 데이터 패킷 처리방법에 대해 설명하였다.In the above, a method of processing a streaming data packet in a base station interworking node according to an embodiment of the present invention has been described.
도 8은 본 발명의 실시 예들에 따른 스트리밍 데이터 패킷을 단말로 제공할 경우 트래픽량에 따라서 단말로 제공되는 스트리밍 데이터 패킷을 시간 축 상에 나타낸 그래프이다. 도 8에서, 상기 스트리밍 데이터 패킷은 1 프레임 단위의 비디오 데이터로 구성되며, 따라서, 프레임 단위의 비디오 데이터의 제거 시, 해당 스트리밍 데이터 패킷이 삭제되는 것으로 가정한다.FIG. 8 is a graph showing streaming data packets provided to a terminal according to a traffic amount on a time axis when a streaming data packet according to embodiments of the present invention is provided to a terminal. In FIG. 8, it is assumed that the streaming data packet is composed of video data in units of one frame, and therefore, when the video data in units of frames is removed, the corresponding streaming data packet is deleted.
도 8을 참조하면, (a)는 스트리밍 제공 서버(70)에서 스트리밍 데이터 패킷을 단말(10)로 전송함에 따라서 기지국 연동 노드(40)에서 수신하는 스트리밍 데이터 패킷을 시간 축 상에 나타낸 그래프의 일 예이다. (b)와 (c)는 기지국 연동 노드(40)에서 트래픽량에 따라서 결정된 프레임 레이트에 따라서 프레임 압축 타입기준으로 스트리밍 데이터 패킷이 제거된 후 단말(10)로 전송되는 스트리밍 데이터 패킷을 시간 축 상에 나타낸 그래프의 일 예이다.Referring to FIG. 8, (a) is a graph showing the streaming data packet received from the base
예를 들어, 스트리밍 제공 서버(70)에서 전송하는 스트리밍 데이터의 프레임 레이트가 기본적으로 30FR(Frame Rate)가정한다. 이에, 스트리밍 제공 서버(70)에서 전송되는 스트리밍 데이터 패킷의 시간 축 상에 나타낸 그래프를 (a)라고 가정한다. 만약, 기지국 연동 노드(40)에서 확인된 트래픽량이 혼잡 상태라고 설정된 트래픽량 보다 적을 경우, 기지국 연동 노드(70)는 수신되는 스트리밍 데이터 패킷을 제거 하지 않을 수 있다. 이에 기지국 연동 노드(40)는 수신된 상태로 스트리밍 데이터 패킷을 단말(10)로 전송할 수 있다. 다른 일 예로, 만약, 기지국 연동 노드(40)에서 확인된 트래픽량이 1단계 혼잡 상태라고 설정된 트래픽량 보다 클 경우, 기지국 연동 노드(70)는 수신되는 스트리밍 데이터 패킷을 제거 할 수 있다. 즉, 기지국 연동 노드(40)는 확인된 트래픽량에 따라서 프레임 레이트를 20FR으로 결정할 수 있고, 스트리밍 데이터 패킷의 헤더(500)에서 분석된 I, B, P 타입의 프레임 압축 타입 중, P 타입의 프레임 압축 타입의 스트리밍 데이터 패킷을 제거하여 단말로 전송 할 수 있다. 이 경우, 단말(10)에서 수신되는 스트리밍 데이터 패킷의 시간 축 상의 그래프는 (b)가 될 수 있다. 마지막으로, 다른 일 예는, 만약, 기지국 연동 노드(40)에서 확인된 트래픽량이 2단계 혼잡 상태라고 설정된 트래픽량 보다 클 경우, 기지국 연동 노드(70)는 수신되는 스트리밍 데이터 패킷을 제거 할 수 있다. 즉, 기지국 연동 노드(40)는 확인된 트래픽량에 따라서 프레임 레이트를 15FR으로 결정할 수 있고, 스트리밍 데이터 패킷의 헤더(500)에서 분석된 I, B, P 타입의 프레임 압축 타입 중, P 타입과 B 타입의 프레임 압축 타입의 스트리밍 데이터 패킷을 제거하여 단말로 전송 할 수 있다. 이 경우, 단말(10)에서 수신되는 스트리밍 데이터 패킷의 시간 축 상의 그래프는 (c)가 될 수 있다.For example, it is assumed that the frame rate of streaming data transmitted from the
이상으로 본 발명의 실시 예에 따른 스트리밍 데이터 패킷을 단말로 제공할 경우 트래픽량에 따라서 단말로 제공되는 스트리밍 데이터 패킷을 시간 축 상에 나타낸 그래프에 대해 설명하였다.As described above, when a streaming data packet according to an embodiment of the present invention is provided to a terminal, a graph showing the streaming data packet provided to the terminal according to the amount of traffic on the time axis has been described.
상술한 바와 같은 본 발명의 스트리밍 데이터 패킷 제공 방법과 스트리밍 데이터 패킷 처리 방법은 컴퓨터 프로그램 명령어와 데이터를 저장하기에 적합한 컴퓨터로 판독 가능한 매체의 형태로 기록되어 제공될 수도 있다. 이때, 기록매체에 기록된 프로그램은 컴퓨터에서 읽히어 설치되고 실행됨으로써 전술한 기능들을 실행할 수 있다. The streaming data packet providing method and the streaming data packet processing method of the present invention as described above may be recorded and provided in the form of a computer-readable medium suitable for storing computer program instructions and data. At this time, the program recorded on the recording medium can be read, installed, and executed by a computer to execute the above-described functions.
여기서, 컴퓨터가 기록매체에 기록된 프로그램을 읽어 들여 프로그램으로 구현된 기능들을 실행시키기 위하여, 전술한 프로그램은 컴퓨터의 프로세서(CPU)가 컴퓨터의 장치 인터페이스(Interface)를 통해 읽힐 수 있는 C, C++, JAVA, 기계어 등의 컴퓨터 언어로 코드화된 코드(Code)를 포함할 수 있다. Here, in order for the computer to read the program recorded on the recording medium and execute the functions implemented as the program, the above-described program is C, C++, which can be read by the computer's processor (CPU) through the computer's device interface. It may include code coded in a computer language such as JAVA and machine language.
이러한 코드는 전술한 기능들을 정의한 함수 등과 관련된 기능적인 코드(Function Code)를 포함할 수 있고, 전술한 기능들을 컴퓨터의 프로세서가 소정의 절차대로 실행시키는데 필요한 실행 절차 관련 제어 코드를 포함할 수도 있다. 또한, 이러한 코드는 전술한 기능들을 컴퓨터의 프로세서가 실행시키는데 필요한 추가 정보나 미디어가 컴퓨터의 내부 또는 외부 메모리의 어느 위치(주소 번지)에서 참조 되어야 하는지에 대한 메모리 참조 관련 코드를 더 포함할 수 있다. 또한, 컴퓨터의 프로세서가 전술한 기능들을 실행시키기 위하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 통신이 필요한 경우, 코드는 컴퓨터의 프로세서가 컴퓨터의 통신 모듈을 이용하여 원격(Remote)에 있는 어떠한 다른 컴퓨터나 서버 등과 어떻게 통신해야만 하는지, 통신 시 어떠한 정보나 미디어를 송수신해야 하는지 등에 대한 통신 관련 코드를 더 포함할 수도 있다.This code may include a functional code related to a function defining the above-described functions, and may include a control code related to an execution procedure necessary for the processor of the computer to execute the above-described functions according to a predetermined procedure. In addition, these codes may further include additional information necessary for the processor of the computer to execute the above-described functions, or code related to a memory reference to which location (address address) of the internal or external memory of the computer should be referenced. . In addition, when the computer's processor needs to communicate with any other computer or server in a remote in order to execute the above-described functions, the code is used by the computer's processor using the computer's communication module. It may further include a communication-related code for how to communicate with other computers or servers, and what information or media should be transmitted and received during communication.
이러한, 컴퓨터 프로그램 명령어와 데이터를 저장하기에 적합한 컴퓨터로 판독 가능한 매체는, 예컨대 기록매체는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(Magnetic Media), CD-ROM(Compact Disk Read Only Memory), DVD(Digital Video Disk)와 같은 광 기록 매체(Optical Media), 플롭티컬 디스크(Floptical Disk)와 같은 자기-광 매체(Magneto-Optical Media), 및 롬(ROM, Read Only Memory), 램(RAM, Random Access Memory), 플래시 메모리, EPROM(Erasable Programmable ROM), EEPROM(Electrically Erasable Programmable ROM)과 같은 반도체 메모리를 포함한다. 프로세서와 메모리는 특수 목적의 논리 회로에 의해 보충되거나, 그것에 통합될 수 있다. Such computer-readable media suitable for storing computer program commands and data include, for example, magnetic media such as hard disks, floppy disks, and magnetic tapes, and compact disk read only memory (CD-ROM). , Optical Media such as DVD (Digital Video Disk), Magneto-Optical Media such as Floptical Disk, and ROM (Read Only Memory), RAM (RAM) , Random Access Memory), flash memory, EPROM (Erasable Programmable ROM), and EEPROM (Electrically Erasable Programmable ROM). The processor and memory can be supplemented by special purpose logic circuits or incorporated into it.
또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 본 발명을 구현하기 위한 기능적인(Functional) 프로그램과 이와 관련된 코드 및 코드 세그먼트 등은, 기록매체를 읽어서 프로그램을 실행시키는 컴퓨터의 시스템 환경 등을 고려하여, 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론되거나 변경될 수도 있다.In addition, the computer-readable recording medium is distributed over a computer system connected through a network, so that computer-readable codes can be stored and executed in a distributed manner. In addition, a functional program for implementing the present invention, and related codes and code segments, etc., are programmers in the technical field to which the present invention pertains in consideration of the system environment of a computer that reads the recording medium and executes the program. May be easily inferred or modified by
본 명세서는 다수의 특정한 구현물의 세부사항들을 포함하지만, 이들은 어떠한 발명이나 청구 가능한 것의 범위에 대해서도 제한적인 것으로서 이해되어서는 안되며, 오히려 특정한 발명의 특정한 실시형태에 특유할 수 있는 특징들에 대한 설명으로서 이해되어야 한다. 개별적인 실시형태의 문맥에서 본 명세서에 기술된 특정한 특징들은 단일 실시형태에서 조합하여 구현될 수도 있다. 반대로, 단일 실시형태의 문맥에서 기술한 다양한 특징들 역시 개별적으로 혹은 어떠한 적절한 하위 조합으로도 복수의 실시형태에서 구현 가능하다. 나아가, 특징들이 특정한 조합으로 동작하고 초기에 그와 같이 청구된 바와 같이 묘사될 수 있지만, 청구된 조합으로부터의 하나 이상의 특징들은 일부 경우에 그 조합으로부터 배제될 수 있으며, 그 청구된 조합은 하위 조합이나 하위 조합의 변형물로 변경될 수 있다.While this specification includes details of a number of specific implementations, these should not be construed as limiting to the scope of any invention or claim, but rather as a description of features that may be peculiar to a particular embodiment of a particular invention. It must be understood. Certain features described herein in the context of separate embodiments may be implemented in combination in a single embodiment. Conversely, various features described in the context of a single embodiment can also be implemented in multiple embodiments individually or in any suitable sub-combination. Furthermore, although features operate in a particular combination and may be initially described as so claimed, one or more features from a claimed combination may in some cases be excluded from the combination, and the claimed combination may be a subcombination. Or sub-combination variations.
마찬가지로, 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 바람직한 결과를 얻기 위하여 도시된 그 특정한 순서나 순차적인 순서대로 그러한 동작들을 수행하여야 한다거나 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안 된다. 특정한 경우, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다. 또한, 상술한 실시형태의 다양한 시스템 컴포넌트의 분리는 그러한 분리를 모든 실시형태에서 요구하는 것으로 이해되어서는 안되며, 설명한 프로그램 컴포넌트와 시스템들은 일반적으로 단일의 소프트웨어 제품으로 함께 통합되거나 다중 소프트웨어 제품에 패키징 될 수 있다는 점을 이해하여야 한다.Likewise, although operations are depicted in the drawings in a specific order, it should not be understood that such operations must be performed in that particular order or sequential order shown, or that all illustrated operations must be performed in order to obtain a desired result. In certain cases, multitasking and parallel processing can be advantageous. In addition, separation of the various system components of the above-described embodiments should not be understood as requiring such separation in all embodiments, and the program components and systems described are generally integrated together into a single software product or packaged in multiple software products. You should understand that you can.
본 발명은 스트리밍 데이터 패킷 제공 방법에 관한 것으로, 더욱 상세하게는 스트리밍 제공 서버와 기지국 연동 노드를 통한 스트리밍 데이터 패킷 제공 방법, 이를 위한 기지국 연동 노드에 관한 것이다.The present invention relates to a method of providing a streaming data packet, and more particularly, to a method of providing a streaming data packet through a streaming providing server and a base station interworking node, and a base station interworking node therefor.
본 발명은 상기한 종래의 문제점을 해결하기 위해 제안된 것으로서, 특히 MPEG 미디어 트랜스포트(MMT; MPEG Media Transport) 기술을 이용하고 기지국에서의 트래픽량에 따라서 적응적으로 스트리밍 데이터 패킷을 제공하는 서비스 방법, 장치 및 시스템을 제공할 수 있다. 이러한 본 발명은 스트리밍 서비스 산업의 발전에 이바지할 수 있다.The present invention has been proposed in order to solve the above-described conventional problem, and in particular, a service method for providing streaming data packets adaptively according to the amount of traffic in a base station using MPEG Media Transport (MMT) technology. , Devices and systems can be provided. This invention can contribute to the development of the streaming service industry.
더불어, 본 발명은 시판 또는 영업의 가능성이 충분할 뿐만 아니라 현실적으로 명백하게 실시할 수 있는 정도이므로 산업상 이용가능성이 있다.In addition, the present invention is not only sufficiently commercially available or commercially possible, but also has industrial applicability because it can be implemented clearly in reality.
10: 단말 20: 접속망
30: 기지국 40: 기지국 연동 노드
41: 인터페이스부 42: 분석 모듈
43: 미디어 처리 모듈 44: 모니터링 모듈
50: 코어망 60: 인터넷망
70: 스트리밍 제공 서버 71: 서버 통신부
72: 서버 제어부 72a: 데이터 패킷 생성 모듈
72b: 데이터 패킷 전송 모듈 73: 서버 저장부
500: 스트리밍 데이터 패킷 헤더 505: Type of Servie 필드10: terminal 20: access network
30: base station 40: base station interlocking node
41: interface unit 42: analysis module
43: media processing module 44: monitoring module
50: core network 60: internet network
70: streaming providing server 71: server communication unit
72:
72b: data packet transmission module 73: server storage unit
500: streaming data packet header 505: Type of Servie field
Claims (18)
상기 기지국 연동 노드는
컨텐츠의 스트리밍 서비스를 제공하는 스트리밍 제공 서버로부터 상기 기지국을 통해 단말로 전달되는 스트리밍 데이터 패킷의 헤더를 분석하여, 상기 스트리밍 데이터 패킷에 포함된 비디오 데이터의 프레임 압축 타입 정보를 분석하는 분석모듈; 및
상기 기지국의 트래픽량에 따라서 상기 분석된 프레임 압축 타입 정보를 기준으로 상기 스트리밍 데이터 패킷의 비디오 데이터를 프레임 단위로 제거하여 상기 컨텐츠의 프레임 레이트를 조절하는 미디어 처리 모듈;를 포함하되,
상기 미디어 처리 모듈은
상기 제거를 상기 스트리밍 데이터 패킷이 전송되는 플로우 별로 일정하게 하는 것을 특징으로 하는 기지국 연동 노드.In a base station interworking node connected to at least one base station,
The base station interworking node
An analysis module for analyzing a header of a streaming data packet transmitted to a terminal through the base station from a streaming providing server providing a streaming service of content, and analyzing frame compression type information of video data included in the streaming data packet; And
Including; a media processing module for adjusting the frame rate of the content by removing video data of the streaming data packet frame by frame based on the analyzed frame compression type information according to the traffic amount of the base station;
The media processing module
The base station interworking node, wherein the removal is made constant for each flow through which the streaming data packet is transmitted.
MPEG 미디어 트랜스포트(MMT; MPEG Media Transport) 패킷인 것을 특징으로 하는 기지국 연동 노드.The method of claim 1, wherein the streaming data packet
A base station interworking node, characterized in that it is an MPEG Media Transport (MMT) packet.
상기 스트리밍 데이터 패킷은 1 프레임 단위의 비디오 데이터를 포함하는 것을 특징으로 하는 기지국 연동 노드.The method of claim 1,
The streaming data packet includes video data in units of 1 frame.
I, B, P 타입의 프레임 압축 타입 중, B 또는 P 타입의 비디오 데이터 중 적어도 일부를 일정 비율로 제거하는 것을 특징으로 하는 기지국 연동 노드.The method of claim 1, wherein the media processing module
A base station interworking node, wherein at least a part of video data of B or P type among I, B, and P type frame compression types is removed at a predetermined ratio.
상기 헤더의 ToS(Type of Service) 필드로부터 상기 프레임 압축 타입 정보를 분석하는 것을 특징으로 하는 기지국 연동 노드.The method of claim 1, wherein the analysis module
The base station interworking node, characterized in that analyzing the frame compression type information from the ToS (Type of Service) field of the header.
상기 기지국의 트래픽량에 따라서 프레임 레이트를 결정하고, 상기 프레임 레이트에 따라서 상기 비디오 데이터의 제거 비율을 설정하는 것을 특징으로 하는 기지국 연동 노드.The method of claim 1, wherein the media processing module
And determining a frame rate according to the amount of traffic of the base station, and setting a removal rate of the video data according to the frame rate.
상기 기지국의 트래픽량을 감시하는 모니터링 모듈을 더 포함하는 기지국 연동 노드.The method of claim 6,
Base station interworking node further comprising a monitoring module for monitoring the traffic volume of the base station.
상기 기지국을 통해 컨텐츠의 스트리밍 서비스를 제공하는 스트리밍 제공 서버로부터 단말로 전송될 스트리밍 데이터 패킷을 수신하는 단계;
상기 수신한 스트리밍 데이터 패킷의 헤더에서 프레임 압축 타입 정보를 분석하는 단계; 및
상기 기지국의 트래픽량에 따라서, 상기 분석된 프레임 압축 타입 정보를 기준으로 상기 수신한 스트리밍 데이터 패킷에 포함된 비디오 데이터를 프레임 단위로 제거하여 상기 컨텐츠의 프레임 레이트를 조절하는 단계;를 포함하되,
상기 조절하는 단계는
상기 제거를 상기 스트리밍 데이터 패킷이 전송되는 플로우 별로 일정하게 하는 것을 특징으로 하는 기지국 연동 노드를 통한 스트리밍 데이터 패킷 처리 방법.In the streaming data packet processing method of a base station interworking node connected to at least one base station,
Receiving a streaming data packet to be transmitted to a terminal from a streaming providing server that provides a streaming service of content through the base station;
Analyzing frame compression type information in the header of the received streaming data packet; And
Including, according to the traffic volume of the base station, removing video data included in the received streaming data packet frame by frame based on the analyzed frame compression type information to adjust the frame rate of the content;
The adjusting step
The method of processing a streaming data packet through a base station interworking node, wherein the removal is made constant for each flow through which the streaming data packet is transmitted.
MPEG 미디어 트랜스포트(MMT; MPEG Media Transport) 패킷인 것을 특징으로 하는 기지국 연동 노드를 통한 스트리밍 데이터 패킷 처리 방법.The method of claim 11, wherein the streaming data packet
A method of processing a streaming data packet through a base station interworking node, characterized in that it is an MPEG Media Transport (MMT) packet.
상기 스트리밍 데이터 패킷은 1 프레임 단위의 비디오 데이터를 포함하는 것을 특징으로 하는 기지국 연동 노드를 통한 스트리밍 데이터 패킷 처리 방법.The method of claim 11,
The streaming data packet processing method through a base station interworking node, characterized in that the streaming data packet includes video data in units of one frame.
I, B, P 타입의 프레임 압축 타입 중, B 또는 P 타입의 비디오 데이터를 일정 비율로 제거하는 것을 특징으로 하는 기지국 연동 노드를 통한 스트리밍 데이터 패킷 처리 방법.The method of claim 11, wherein the adjusting step
A method for processing a streaming data packet through a base station interworking node, characterized in that among I, B, and P type frame compression types, B or P type video data is removed at a predetermined rate.
상기 헤더의 ToS(Type of Service) 필드로부터 상기 프레임 압축 타입 정보를 분석하는 것을 특징으로 하는 기지국 연동 노드를 통한 스트리밍 데이터 패킷 처리 방법.The method of claim 11, wherein the analyzing step
A method of processing a streaming data packet through a base station interworking node, characterized in that the frame compression type information is analyzed from the ToS (Type of Service) field of the header.
상기 기지국의 트래픽량에 따라서 프레임 레이트를 결정하는 단계; 및
상기 프레임 레이트에 따라서, 상기 프레임 압축 타입 정보를 기준으로 상기 비디오 데이터의 제거 비율을 설정하는 단계를 포함하는 것을 특징으로 하는 기지국 연동 노드를 통한 스트리밍 데이터 패킷 처리 방법.The method of claim 11, wherein the adjusting step
Determining a frame rate according to the traffic volume of the base station; And
And setting a removal rate of the video data based on the frame compression type information according to the frame rate.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150083909A KR102209783B1 (en) | 2015-06-15 | 2015-06-15 | Method for providing streaming data packet through streaming server and node linking with base station, and node using the same |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020150083909A KR102209783B1 (en) | 2015-06-15 | 2015-06-15 | Method for providing streaming data packet through streaming server and node linking with base station, and node using the same |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20160147321A KR20160147321A (en) | 2016-12-23 |
KR102209783B1 true KR102209783B1 (en) | 2021-01-28 |
Family
ID=57736198
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020150083909A KR102209783B1 (en) | 2015-06-15 | 2015-06-15 | Method for providing streaming data packet through streaming server and node linking with base station, and node using the same |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102209783B1 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109818901B (en) * | 2017-11-20 | 2021-04-20 | 华为技术有限公司 | Method, device and system for determining message header compression mechanism |
KR102304045B1 (en) * | 2020-08-24 | 2021-09-23 | 주식회사 시티랩스 | Content transmission method and apparatus in core node controlling multiple edge nodes |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101249613B1 (en) * | 2009-11-11 | 2013-04-01 | 한국전자통신연구원 | Network-adaptive variable stream layered method and apparatus for video streaming |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR102107514B1 (en) | 2013-04-18 | 2020-05-07 | 삼성전자주식회사 | Method and apparatus for managing dynamic que in broadcasting system |
-
2015
- 2015-06-15 KR KR1020150083909A patent/KR102209783B1/en active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101249613B1 (en) * | 2009-11-11 | 2013-04-01 | 한국전자통신연구원 | Network-adaptive variable stream layered method and apparatus for video streaming |
Also Published As
Publication number | Publication date |
---|---|
KR20160147321A (en) | 2016-12-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102072344B1 (en) | Method for providing of adaptive streaming service and apparatus therefor | |
US10291535B2 (en) | Method and apparatus for controlling media delivery in multimedia transport network | |
US8782165B2 (en) | Method and transcoding proxy for transcoding a media stream that is delivered to an end-user device over a communications network | |
JP6430034B2 (en) | Recording medium and apparatus for recording program for providing low-delay live broadcast content | |
CN115134632B (en) | Video code rate control method, device, medium and content delivery network CDN system | |
KR102209783B1 (en) | Method for providing streaming data packet through streaming server and node linking with base station, and node using the same | |
KR20160102683A (en) | Proxy server for cloud streaming service, cloud streaming system and method using the same | |
KR102307447B1 (en) | Server, method, and client terminal for http adaptive streaming based on network environment mornitoring | |
US10165311B2 (en) | Non-transitory computer-readable recording medium having program recorded therein for providing network-adaptive content and apparatus for providing network-adaptive content | |
US9736720B2 (en) | Modifying feedback information to control a source device | |
US10069948B2 (en) | Method, apparatus, and system for acquiring media service parameter indication | |
KR102281217B1 (en) | Method for encoding and decoding, and apparatus for the same | |
Tabari et al. | Low latency live video streaming on android devices using web-socket | |
CN104038778A (en) | Multimedia redirection playing control method and device | |
KR102193480B1 (en) | Method and apparatus for controlling media contents delivery | |
KR102210437B1 (en) | Method and appratus for controlling media contents delivery | |
WO2018021950A1 (en) | Device and method for controlling media streaming from a server to a client | |
KR102210407B1 (en) | Content Delivery Method and Apparatus Using a Plurality of Communication Network | |
Ji et al. | Buffer schemes for VBR video streaming over heterogeneous wireless networks | |
JP2021013049A (en) | Data transmission device, data transmission system, and data transmission method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant |