KR20210042051A - Multipath-based block transmission system and streaming method for adaptive streaming service - Google Patents

Multipath-based block transmission system and streaming method for adaptive streaming service Download PDF

Info

Publication number
KR20210042051A
KR20210042051A KR1020210009834A KR20210009834A KR20210042051A KR 20210042051 A KR20210042051 A KR 20210042051A KR 1020210009834 A KR1020210009834 A KR 1020210009834A KR 20210009834 A KR20210009834 A KR 20210009834A KR 20210042051 A KR20210042051 A KR 20210042051A
Authority
KR
South Korea
Prior art keywords
block
segment
length
quality
buffer
Prior art date
Application number
KR1020210009834A
Other languages
Korean (ko)
Other versions
KR102304476B1 (en
Inventor
정광수
김희광
황민구
Original Assignee
광운대학교 산학협력단
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 광운대학교 산학협력단 filed Critical 광운대학교 산학협력단
Priority to KR1020210009834A priority Critical patent/KR102304476B1/en
Publication of KR20210042051A publication Critical patent/KR20210042051A/en
Application granted granted Critical
Publication of KR102304476B1 publication Critical patent/KR102304476B1/en

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/2385Channel allocation; Bandwidth allocation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2401Monitoring of the client buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/631Multimode Transmission, e.g. transmitting basic layers and enhancement layers of the content over different transmission paths or transmitting with different error corrections, different keys or with different transmission protocols

Abstract

Disclosed are a multipath-based block transmission system and a streaming method for an adaptive streaming service. The system and method provides the multipath-based block transmission system and the streaming method for the adaptive streaming service, which improve quality of a user quality of experience (QoE) by using a system and a streaming method, wherein when the adaptive streaming service transmits media segments using multipath, the media server transmits the segments in block units according to a request of a block unit media segment of which block length and quality are determined by measuring an aggregate bandwidth of each path from a client.

Description

적응적 스트리밍 서비스를 위한 다중 경로 기반 블록 전송 시스템 및 스트리밍 방법{Multipath-based block transmission system and streaming method for adaptive streaming service}Multipath-based block transmission system and streaming method for adaptive streaming service

본 발명은 적응적 스트리밍 서비스(adaptive streaming service)에 관한 것으로, 보다 상세하게는 적응적 스트리밍 서비스에서 네트워크의 다중 경로를 이용하여 미디어 세그먼트를 전송할 때 클라이언트가 각 경로의 통합 대역폭을 측정하고 클라이언트로부터 블록 길이와 품질이 결정된 블록 단위 미디어 세그먼트의 요청에 따라 미디어 서버가 블록 단위로 세그먼트를 전송하는 시스템과 스트리밍 방법을 사용하여 사용자 체감 품질(QoE, Quality of Experience)을 향상시키기 위한, 적응적 스트리밍 서비스를 위한 다중 경로 기반 블록 전송 시스템 및 스트리밍 방법에 관한 것이다.The present invention relates to an adaptive streaming service, and more particularly, when transmitting a media segment using multiple paths of a network in an adaptive streaming service, a client measures the aggregate bandwidth of each path and blocks from the client. An adaptive streaming service is provided to improve the quality of experience (QoE) by using a system and streaming method in which the media server transmits the segment in block units according to the request of the block unit media segment whose length and quality are determined. It relates to a multi-path based block transmission system and a streaming method for the purpose.

비디오 스트리밍 시스템은 네트워크 수용능력 이상으로 과부하 트래픽이 발생하는 경우 패킷 지연(packet delay), 패킷 로스(packet loss), 지터(jitter) 등에 의해 비디오의 서비스 품질(QoS)이 떨어져 재생 장치에서 이를 시청하는 사용자 체감 품질(QoE, Quality of Experience)이 떨어지게 된다.In the video streaming system, when overload traffic occurs beyond the network capacity, the quality of service (QoS) of the video decreases due to packet delay, packet loss, and jitter, so that the playback device can watch it. The quality of experience (QoE) deteriorates.

최근, 비디오 스트리밍 서비스에 대한 사용자들이 증가함에 따라 대역폭이 제한된 이기종 네트워크에서 끊김 없는 비디오를 제공하며, 사용자 체감 품질(QoE)을 높이기 위해 네트워크 인지 기술을 사용하는 적응적 비디오 스트리밍 기술이 등장하였다.Recently, as the number of users for video streaming service increases, adaptive video streaming technology using network perception technology has emerged to provide seamless video in heterogeneous networks with limited bandwidth and to increase user experience quality (QoE).

적응적 비디오 스트리밍 서버는 다양한 비트율(bitrate)의 비디오 데이터를 세그먼트 단위로 분할하여 저장하고, 각 세그먼트의 URL 및 비디오 정보를 메타데이터(metadata)로 정의한다. 적응적 비디오 스트리밍 재생 장치는 초기 스트리밍 세션에서 메타데이터를 수신하고, 이를 분석하여 네트워크 상황에 적절한 세그먼트를 요청한다.The adaptive video streaming server divides and stores video data of various bit rates into segments, and defines URL and video information of each segment as metadata. The adaptive video streaming playback apparatus receives metadata in an initial streaming session, analyzes it, and requests a segment appropriate to the network situation.

그러나, 기존 적응적 비디오 스트리밍 서비스는 품질 선택 시 대역폭 측정값과 재생 장치의 버퍼만을 고려하므로, 콘텐츠 특성 및 재생 장치 특성을 고려하지 않아 대역폭 낭비 또는 비디오 끊김 현상이 발생할 수 있다. 대역폭 낭비 문제는 재생 장치가 표현할 수 있는 픽셀 및 비트율을 초과하는 비디오를 요청하는 경우 발생한다.However, since the existing adaptive video streaming service considers only a bandwidth measurement value and a buffer of a playback device when selecting a quality, a bandwidth wasted or a video dropout phenomenon may occur due to not taking into account the content characteristics and the playback device characteristics. The problem of wasting bandwidth occurs when a playback device requests a video that exceeds a displayable pixel and bit rate.

비디오 끊김 현상은 변화하는 프레임이 많은 미디어 콘텐츠의 경우, 순간 비트율이 높아 해당 세그먼트 수신 시 높은 지연이 발생하여 끊김 현상이 발생한다. 비디오 스트리밍 서비스를 이용하는 사용자의 체감 품질(QoE)을 향상시키기 위해 콘텐츠, 재생 장치, 네트워크 특징을 사용하여 끊김 없는 스트리밍 서비스를 제공하는 기술이 요구된다.In the case of a media content with a large number of changing frames, a video interruption phenomenon occurs due to a high delay when receiving a corresponding segment due to a high instantaneous bit rate. In order to improve the quality of experience (QoE) of users using video streaming services, a technology that provides seamless streaming services using content, playback devices, and network features is required.

이와 관련된 선행기술1로써, 특허등록번호 10-1982290에서는 "적응적 스트리밍 서비스의 체감 품질 향상을 위한 콘텐츠 특성 기반 스트리밍 시스템 및 방법"이 개시되어 있으며, 적응적 스트리밍 서비스의 체감 품질(QoE, Quality of Experience) 향상을 위한 콘텐츠 특성으로써 요청할 세그먼트의 크기, 네트워크 대역폭, 그리고 버퍼 점유율을 사용하여 비디오 품질(bitrate)을 조절함으로써 재생 끊김과 불필요한 품질 변경을 최소화하는 적응적 스트리밍 서비스의 체감 품질 향상을 위한 콘텐츠 특성 기반의 스트리밍 시스템 및 방법을 제공한다.As a prior art 1 related to this, patent registration number 10-1982290 discloses "a streaming system and method based on content characteristics for improving the quality of experience of an adaptive streaming service", and the quality of experience (QoE) of an adaptive streaming service is disclosed. Experience) Content for improving the quality of experience of an adaptive streaming service that minimizes playback interruption and unnecessary quality changes by adjusting the video bitrate using the requested segment size, network bandwidth, and buffer occupancy as a content characteristic for enhancement. It provides a feature-based streaming system and method.

도 1은 종래의 적응적 스트리밍 서비스의 콘텐츠 특성 기반의 체감 품질 향상을 위한 클라이언트/서버 시스템 구조를 보인 그림이다.1 is a diagram showing a structure of a client/server system for improving haptic quality based on content characteristics of a conventional adaptive streaming service.

적응적 스트리밍 서비스의 체감 품질 향상을 위한 콘텐츠 특성 기반 스트리밍 시스템은, A streaming system based on content characteristics for improving the quality of experience of an adaptive streaming service,

콘텐츠를 다양한 비트율로 인코딩하며 각 품질(bitrate) 별 콘텐츠를 byte 단위의 세그먼트로 분할하고 콘텐츠의 정보를 표현하는 매니패스트 파일을 저장하며, 미디어 콘텐츠를 저장하며, 레이트 적응 방식을 사용하여 콘텐츠-인지 접근 방식의 적응적 스트리밍 서비스를 제공하는 서버(server); 및 Encoding contents at various bit rates, dividing contents for each bitrate into byte-unit segments, storing manifest files expressing the information of contents, storing media contents, and content-recognition using a rate adaptive method A server that provides an adaptive streaming service of an approach method; And

적응적 스트리밍 서비스의 체감 품질 향상을 위해, 상기 클라이언트가 상기 서버로 매니패스트 파일을 요청하고 이에 대한 응답으로 상기 서버로부터 매니패스트 파일을 수신하면 각 품질 별 콘텐츠의 위치와 세그먼트의 실제 크기, 재생 길이의 정보를 인지하며, 상기 서버로부터 세그먼트들을 다운로드 할 때마다 세그먼트의 크기를 사용해 네트워크 대역폭을 측정하며, 대역폭 측정 모듈과 버퍼에서 제공하는 정보를 기반으로 다음에 요청할 세그먼트의 품질(bitrate)을 결정하며, 품질 적응 모듈에서 선택한 품질(bitrate)의 세그먼트에 해당하는 바이트를 요청하는 클라이언트(client)를 포함하며, In order to improve the quality of experience of the adaptive streaming service, when the client requests a manifest file from the server and receives the manifest file from the server in response to the request, the location of the content for each quality, the actual size of the segment, and the playback length It recognizes the information of, and measures the network bandwidth using the size of the segment every time segments are downloaded from the server, and determines the bitrate of the next requested segment based on the information provided by the bandwidth measurement module and the buffer. , Including a client (client) requesting a byte corresponding to the segment of the quality (bitrate) selected in the quality adaptation module,

상기 품질은 A/V 미디어의 비트레이트(bitrate) 이며, The quality is the bitrate of the A/V media,

상기 적응적 스트리밍 서비스(adaptive streaming service)에서 체감 품질(QoE, Qualityof Experience)을 향상시키기 위해 콘텐츠 특성 기반 스트리밍 시에 서버로 요청할 세그먼트(segment)의 크기, 네트워크 대역폭, 및 버퍼 점유율을 고려하여 비디오 품질(bitrate)을 조절한다. In order to improve the quality of experience (QoE) in the adaptive streaming service, video quality in consideration of the size of a segment to be requested to the server, network bandwidth, and buffer occupancy when streaming based on content characteristics Adjust (bitrate).

상기 매니패스트 파일(manifest file)은 각 품질(bitrate) 별 콘텐츠의 위치와 바이트 범위가 포함되어 있으며, 클라이언트로부터 서버로 매니패스트 파일을 요청하고 이에 대항 응답으로 상기 서버로부터 매니패스트 파일을 수신하면 각 품질 별 콘텐츠의 위치와 세그먼트의 실제 크기, 재생 길이의 정보를 인지한다. The manifest file contains the location and byte range of the content for each bitrate. When a manifest file is requested from the client to the server and the manifest file is received from the server in response to the request, each Recognizes the location of the content by quality, the actual size of the segment, and information on the playback length.

상기 클라이언트(client)는 상기 서버로부터 세그먼트들을 다운로드 할 때마다 세그먼트의 크기를 사용하여 네트워크 대역폭을 측정하는 대역폭 측정 모듈; 상기 대역폭 측정 모듈과 버퍼에서 제공하는 정보를 기반으로 다음에 요청할 세그먼트의 품질을 결정하는 품질 적응 모듈; 상기 품질 적응 모듈에서 선택한 품질(bitrate)의 세그먼트에 해당하는 바이트를 요청하는 세그먼트 요청 모듈; 및 각 세그먼트들을 서버로부터 다운로드 할 때마다, 세그먼트의 재생 길이만큼 버퍼 점유량을 증가시키며, 버퍼 점유율과 버퍼 충전 속도를 산출하는 버퍼를 포함한다. The client (client) is a bandwidth measurement module for measuring a network bandwidth using the size of the segment every time the segment is downloaded from the server; A quality adaptation module that determines a quality of a segment to be requested next based on information provided by the bandwidth measurement module and the buffer; A segment request module for requesting a byte corresponding to a segment of a bitrate selected by the quality adaptation module; And each time each segment is downloaded from the server, the buffer occupied amount is increased by the reproduction length of the segment, and the buffer occupancy rate and the buffer filling rate are calculated.

콘텐츠 특성은 요청할 세그먼트(segment)의 크기, 네트워크 대역폭, 및 버퍼 점유율을 포함한다. Content characteristics include the size of the segment to be requested, network bandwidth, and buffer occupancy.

미디어 콘텐츠를 저장하고 있는 미디어 서버는 콘텐츠를 다양한 비트율로 인코딩하며 각 품질 별 콘텐츠를 byte 단위의 세그먼트(segment)로 분할하고 콘텐츠의 정보를 표현하는 매니패스트 파일을 저장한다. 매니패스트 파일 내부는 각 품질(bitrate) 별 콘텐츠의 위치와 바이트 범위가 포함되어 있으며, 미디어 서버는 매니패스트 파일을 수신하면 각 품질 별 콘텐츠의 위치와 세그먼트의 실제 크기, 재생 길이 등의 정보를 인지할 수 있다. The media server storing the media content encodes the content at various bit rates, divides the content for each quality into byte-unit segments, and stores a manifest file that expresses the information of the content. The inside of the manifest file contains the location and byte range of the content for each bitrate, and when the media server receives the manifest file, the media server recognizes information such as the location of the content for each quality, the actual size of the segment, and the playback length. can do.

클라이언트는 대역폭 측정 모듈, 품질 적응 모듈, 세그먼트 요청 모듈 및 버퍼를 포함한다. The client includes a bandwidth measurement module, a quality adaptation module, a segment request module, and a buffer.

클라이언트의 대역폭 측정(Bandwidth Estimation) 모듈은 미디어 서버로부터 세그먼트를 다운로드 할 때마다 세그먼트의 크기를 사용하여 네트워크 대역폭을 측정한다.The client's bandwidth estimation module measures the network bandwidth using the size of the segment every time a segment is downloaded from the media server.

버퍼(Buffer)는 세그먼트(segment)를 서버로부터 다운로드 할 때마다, 세그먼트의 재생 길이만큼 버퍼 점유량을 증가시키며, 버퍼 점유율과 버퍼 충전 속도를 산출한다. Whenever a segment is downloaded from the server, the buffer increases the occupied amount of the buffer by the playback length of the segment, and calculates the occupancy of the buffer and the filling speed of the buffer.

품질 적응(Quality Adaptation) 모듈은 대역폭 측정 모듈과 버퍼에서 제공하는 정보를 기반으로 다음에 요청할 세그먼트의 품질을 결정한다. The quality adaptation module determines the quality of the segment to be requested next based on the information provided by the bandwidth measurement module and the buffer.

세그먼트 요청(Segment Requesting) 모듈은 상기 품질 적응 모듈에서 선택한 품질(bitrate)의 세그먼트(segment)에 해당하는 바이트를 요청한다.The segment requesting module requests a byte corresponding to a segment of a bitrate selected by the quality adaptation module.

적응적 스트리밍 서비스의 체감 품질 향상을 위한 콘텐츠 특성 기반 스트리밍 방법은 (a) 클라이언트가 콘텐츠-인지 접근 방식의 적응적 스트리밍 서비스를 제공하는 미디어 서버로 매니패스트 파일을 요청하여, 상기 미디어 서버로부터 상기 클라이언트로 매니패스트 파일을 다운로드하는 단계; (b) 상기 클라이언트가 스트리밍을 시작하기 전에 각 품질(bitrate) 별 콘텐츠의 해당 세그먼트의 순서에 따른 바이트를 미디어 서버로 요청하며, 상기 클라이언트가 상기 미디어 서버로부터 요청한 매니패스트 파일을 다운로드 받은 후 첫 번째 세그먼트를 요청하여 다운로드 받으면 콘텐츠의 메타데이터 박스를 분석하며, 상기 클라이언트가 레이트 적응 방식(rate adaptation scheme)을 사용하여 매니패스트 파일(manifest file)로부터의 실제 세그먼트 정보를 사용하여 세그먼트 처리량(segment throughput)을 측정하며, 비디오 세그먼트의 다운로드 말미에, 네트워크 대역폭을 i) 추정(estimation), ⅱ) 예상(expectation), 및 ⅲ) 적응(adaptation)하는 단계; 및 (c) 상기 콘텐츠-인지 접근 방식의 적응적 스트리밍 서비스를 제공하는 미디어 서버가 VBR 비디오 콘텐츠를 스트리밍할 때, 상기 클라이언트가 영상의 데이터가 포함된 세그먼트를 서버로부터 다운로드 받으면서 버퍼링되며 네트워크 대역폭과 버퍼가 충전되는 속도를 측정하고 버퍼 점유율과 네트워크 대역폭을 기반으로 비디오 품질(bitrate)을 조절하는 단계를 포함한다.The content characteristic-based streaming method for improving the haptic quality of an adaptive streaming service includes (a) a client requests a manifest file from a media server that provides an adaptive streaming service of a content-aware approach, and the client Downloading the manifest file to; (b) Before the client starts streaming, the media server requests bytes according to the order of the corresponding segment of the content for each bitrate, and the first after the client downloads the requested manifest file from the media server. When a segment is requested and downloaded, the metadata box of the content is analyzed, and the client uses a rate adaptation scheme to use the actual segment information from the manifest file to provide segment throughput. Measuring and, at the end of the download of the video segment, i) estimation, ii) expectation, and iii) adaptation of the network bandwidth; And (c) when the media server providing the adaptive streaming service of the content-aware approach streams VBR video content, the client is buffered while downloading the segment containing the image data from the server, and the network bandwidth and the buffer Measuring the charging rate and adjusting the video bitrate based on the buffer occupancy and the network bandwidth.

상기 단계 (b)에서 상기 메타데이터 박스는 각 세그먼트의 바이트 위치와 범위, 및 재생 길이가 모두 포함되어 있기 때문에, 상기 클라이언트에서 각 세그먼트의 마지막 바이트 위치를 따로 분석하지 않아도 각 세그먼트의 실제 바이트 크기를 알 수 있다. In step (b), since the metadata box includes all the byte positions and ranges of each segment, and the playback length, the actual byte size of each segment is determined without separately analyzing the last byte position of each segment in the client. Able to know.

첫 번째 절차는 클라이언트가 미디어 서버로 매니패스트 파일을 요청하여, 미디어 서버로부터 클라이언트로 매니패스트 파일을 다운로드 하는 절차이다. The first procedure is a procedure in which the client requests a manifest file from the media server and downloads the manifest file from the media server to the client.

두 번째 절차는 클라이언트가 스트리밍을 시작하기 전 각 품질(bitrate) 별 콘텐츠의 해당 세그먼트의 순서에 따른 바이트를 요청하는 절차이다. 클라이언트가 미디어 서버로부터 매니패스트 파일을 다운로드 받은 후, 첫 번째 세그먼트를 요청하여 다운로드 하면 콘텐츠의 메타데이터 박스를 분석한다. 메타데이터 박스는 각 세그먼트의 바이트 위치와 범위, 및 재생 길이가 모두 포함되어 있기 때문에, 클라이언트에서 각 세그먼트의 마지막 바이트 위치를 따로 분석하지 않아도 각 세그먼트의 실제 바이트 크기를 알 수 있다. The second procedure is a procedure for the client to request bytes according to the order of the corresponding segment of the content for each bitrate before starting streaming. After the client downloads the manifest file from the media server, when the first segment is requested and downloaded, the metadata box of the content is analyzed. Since the metadata box contains all of the byte position and range of each segment, and the playback length, the actual byte size of each segment can be known without separately analyzing the position of the last byte of each segment in the client.

세 번째 절차는 영상의 데이터가 포함된 세그먼트를 다운로드 하여 비디오 스트리밍을 시작한다. 세 번째 절차부터는 클라이언트가 세그먼트(segment)를 미디어 서버로부터 다운로드 받으면서 네트워크 대역폭과 버퍼가 충전되는 속도를 측정하고 버퍼 점유율과 네트워크 상태(네트워크 대역폭)를 기반으로 비디오 품질(bitrate)을 조절한다.The third procedure starts video streaming by downloading the segment containing the video data. From the third procedure, the client downloads a segment from the media server, measures the network bandwidth and the rate at which the buffer is charged, and adjusts the video bitrate based on the buffer occupancy and network conditions (network bandwidth).

I. 관련 연구I. Related research

HTTP-기반 적응 비디오 스트리밍(HTTP-based adaptive video streaming)는 레이트 적응 방식들이 분류된다. 기존의 레이트 적응 방식들은 2개의 주요 카테고리들로 분류할 수 있다: 대역폭-기반(bandwidth-based), 및 버퍼-기반(buffer-based) 레이트 적응 방식. In HTTP-based adaptive video streaming, rate adaptation schemes are classified. Existing rate adaptation schemes can be classified into two main categories: bandwidth-based, and buffer-based rate adaptation schemes.

대역폭-기반 레이트 적응 방식(bandwidth-based rate adaptation scheme)은 추정되는 네트워크 대역폭에 기초하여, 비디오 비트레이트를 상향 또는 하향 전환한다. 상용 비디오 제공자들에 의해 채택된 대부분의 레이트 적응 방식들이 이 카테고리에 속한다. 그러나, 고유의 시-변 대역폭(inherent time-varying bandwidth)은 단-기 레이트 발진(short-term rate oscillations)을 초래하고, 스트리밍 서비스의 사용자 경험을 감소시킨다. [1] S. Akhshabi, A. C. Begen, and C. Dovrolis, "An experimental evaluation of rate-adaptation algorithms in adaptive streaming over HTTP," in Proc. ACM MMSys, Feb. 2011, pp. 157-168에서, 저자들은 3개의 인기있는 HAS 클라이언트들의 레이트 적응 방식들을 비교한다: Netflix, Microsoft Smooth Streaming, 및 Adobe Open Source Media Framework(OSMF) 클라이언트. 그들은 이 중 어느 것도 충분하지 않다고 결론을 내렸는데, 너무 공격적이거나 또는 너무 보수적이기 때문이다. 일부 클라이언트들은 최고 비디오 레이트(the highest video bitrate)와 최저 비디오 레이트(the lowest video bitrate) 간에 점프하기도 한다. 또한, 이는 네트워크 혼잡 레벨 변화(network congestion)에 대하여 상대적으로 긴 응답 시간(a relatively long response time)을 갖는다. 복잡한 네트워크 상태 때문에, 여전히 네트워크 대역폭을 정확하게 예측하는 것은 난제이다.The bandwidth-based rate adaptation scheme switches the video bit rate up or down based on the estimated network bandwidth. Most of the rate adaptation schemes adopted by commercial video providers fall into this category. However, the inherent time-varying bandwidth results in short-term rate oscillations and reduces the user experience of the streaming service. [1] S. Akhshabi, A. C. Begen, and C. Dovrolis, "An experimental evaluation of rate-adaptation algorithms in adaptive streaming over HTTP," in Proc. ACM MMSys, Feb. 2011, pp. At 157-168, the authors compare rate adaptation schemes of three popular HAS clients: Netflix, Microsoft Smooth Streaming, and Adobe Open Source Media Framework (OSMF) clients. They concluded that none of these were enough, either because they were too aggressive or too conservative. Some clients even jump between the highest video bitrate and the lowest video bitrate. In addition, it has a relatively long response time to a network congestion level change. Due to the complex network conditions, it is still a challenge to accurately predict the network bandwidth.

버퍼-기반 레이트 적응 방식들(Buffer-based rate adaptation schemes)은 버퍼 언더플로(buffer underflow, (rebuffering)) 및 오버플로(overflow)를 방지함으로써 연속적인 비디오 플레이백(video playback)을 제공하는 비디오 비트레이트를 선택한다. 몇몇 연구 작업들이 버퍼-기반 방식(buffer-based approach)을 다루었다. [2] J. He, Z. Xue,D. Wu,D. O. Wu,and Y. Wen, "CBM: Online strategieon cost-aware buffer management for mobile video streaming," IEEE Trans. Multimedia, vol. 16, no. 1, pp. 242-252, Jan. 2014에서, 소비되지 않은 비디오 세그먼트들(unconsumed video segments)에 의해 유발되는 비용을 최소화하는 코스트-인지 버퍼 관리 전략(cost-aware buffermanagement strategy)이 제안된다. [3] Y. Xu,E. Altman, R. El-Azouzi, M. Haddad, S. Elayoubi, and T. Jimenez, "Analysis of bufferstarvation with application to objective Qooptimization of streaming services," IEEE Trans. Multimedia, vol. 16, no.3, pp. 813-827, Apr. 2014에서, 저자들은 플레이백 버퍼를 M/M/1 큐(M/M//1 Queue)로서모델링하여 버퍼 스타베이션(buffer starvation)을 특성화한다. Akamai는 버퍼-기반 레이트 적응(buffer-basedrate adaptation) 기술을 채택하지만, 서버 측에서 비디오 비트레이트를 조정한다[4]. 서버-측 접근은 웹 서버 또는 캐시(cache)에 대한 부담을 드라마틱하게 증가시킬 것이므로, 이는 대규모 멀티미디어 전달의 지원을 제약한다. 버퍼 언더플로(buffer underflow)를 방지하는 것은 비디오 플레이백 연속성(video playback continuity)을 보장할 수 있지만, 잦은 비디오 비트레이트 변동(frequent video bitrate changes)을 일으켜, 사용자들에게 열악한 품질 경험을 초래할 수 있다.Buffer-based rate adaptation schemes provide continuous video playback by preventing buffer underflow (rebuffering) and overflow. Choose a rate. Several research works have dealt with a buffer-based approach. [2] J. He, Z. Xue, D. Wu, D. O. Wu,and Y. Wen, "CBM: Online strategieon cost-aware buffer management for mobile video streaming," IEEE Trans. Multimedia, vol. 16, no. 1, pp. 242-252, Jan. In 2014, a cost-aware buffer management strategy is proposed that minimizes the cost caused by unconsumed video segments. [3] Y. Xu,E. Altman, R. El-Azouzi, M. Haddad, S. Elayoubi, and T. Jimenez, "Analysis of bufferstarvation with application to objective Qooptimization of streaming services," IEEE Trans. Multimedia, vol. 16, no. 3, pp. 813-827, Apr. In 2014, the authors characterize buffer starvation by modeling the playback buffer as an M/M//1 Queue. Akamai adopts a buffer-based rate adaptation technology, but adjusts the video bitrate on the server side [4]. The server-side approach will dramatically increase the burden on the web server or cache, thus limiting the support of large-scale multimedia delivery. Preventing buffer underflow can ensure video playback continuity, but can cause frequent video bitrate changes, resulting in poor quality experience for users. .

스마트 기기의 보편화로 다양한 네트워크 환경에서 비디오 스트리밍 서비스에 대한 수요가 급격하게 증가하고 있다. 2013년 미국의 비디오 트래픽 규모는 대표적인 비디오 스트리밍 서비스 제공 업체인 넷플릭스(Netflix)에서 전체 다운스트림 트래픽의 37.05%를 기록하였고, 10억명 이상 이용하고 전체 인터넷 사용자의 1/3을 차지하고 있는 YouTube는 17.85%의 트래픽을 차지하였다. 네트워크를 통한 비디오 스트리밍은 지속적으로 시장규모가 증가할 것으로 예상되며, 최근 UHD 콘텐츠를 제공함에 따라 비디오 트래픽은 급격하게 증가될 것으로 예상된다. 최근. 150Mbps급의 높은 전송속도를 지원하는 LTE-A 서비스와 근 시일 안에 최소 10배에서 최대 1000배 빠른 속도를 지원하는 5G 서비스가 등장하면, 비디오 스트리밍 서비스 제공 환경이 개선될 것으로 예상하고 있다. 그러나, 비디오 서비스를 제공하는 업체의 서버는 한정적인 네트워크 자원을 사용하고 있으므로, 사용자들이 고품질 동영상을 시청할 때, 서비스 품질이 감소할 수 있다. 이에 따라, 폭증하는 비디오 트래픽을 처리하기 위한 네트워크 최적화 기술과 네트워크 상태(대역폭)에 따라 콘텐츠의 품질을 적응적으로 조절하는 비디오 스트리밍 서비스가 필요하게 되었다. With the widespread use of smart devices, the demand for video streaming services in various network environments is rapidly increasing. In 2013, the volume of video traffic in the United States was 37.05% of all downstream traffic from Netflix, a leading video streaming service provider, and 17.85% of YouTube, which uses more than 1 billion users and accounts for a third of all Internet users. Occupied the traffic. The market size of video streaming through the network is expected to increase continuously, and video traffic is expected to increase rapidly as UHD content is recently provided. lately. When LTE-A services that support high transmission rates of 150Mbps and 5G services that support at least 10 times to 1000 times faster speeds appear in the near future, the video streaming service provision environment is expected to improve. However, since the server of a company providing a video service uses limited network resources, when users watch a high-quality video, the quality of service may decrease. Accordingly, there is a need for a network optimization technology for handling exploding video traffic and a video streaming service that adaptively adjusts the quality of content according to network conditions (bandwidth).

특허등록번호 10-1982290 (등록일자 2019년 05월 20일), "적응적 스트리밍 서비스의 체감 품질 향상을 위한 콘텐츠 특성 기반 스트리밍 시스템 및 방법", 정광수, 박지우, 김민수, 출원인: 광운대학교 산학협력단Patent Registration No. 10-1982290 (Registration Date May 20, 2019), "Streaming System and Method Based on Content Characteristics for Improving the Experienced Quality of Adaptive Streaming Service", Kwangsoo Jeong, Jiwoo Park, Minsu Kim, Applicant: Kwangwoon University

S. Akhshabi, A. C. Begen, and C. Dovrolis, "An experimental evaluation of rate-adaptation algorithms in adaptive streaming over HTTP," in Proc. ACM MMSys, Feb. 2011, pp. 157-168. S. Akhshabi, A. C. Begen, and C. Dovrolis, "An experimental evaluation of rate-adaptation algorithms in adaptive streaming over HTTP," in Proc. ACM MMSys, Feb. 2011, pp. 157-168. J. He, Z. Xue,D. Wu,D. O. Wu,and Y. Wen, "CBM: Online strategieon cost-aware buffer management for mobile video streaming," IEEE Trans. Multimedia, vol. 16, no. 1, pp. 242-252, Jan. 2014. J. He, Z. Xue, D. Wu, D. O. Wu,and Y. Wen, "CBM: Online strategieon cost-aware buffer management for mobile video streaming," IEEE Trans. Multimedia, vol. 16, no. 1, pp. 242-252, Jan. 2014. Y. Xu,E. Altman, R. El-Azouzi, M. Haddad, S. Elayoubi, and T. Jimenez, "Analysis of bufferstarvation with application to objective Qooptimization of streaming services," IEEE Trans. Multimedia, vol. 16, no.3, pp. 813-827, Apr. 2014. Y. Xu, E. Altman, R. El-Azouzi, M. Haddad, S. Elayoubi, and T. Jimenez, "Analysis of bufferstarvation with application to objective Qooptimization of streaming services," IEEE Trans. Multimedia, vol. 16, no. 3, pp. 813-827, Apr. 2014. L. D. Cicco, S. Mascolo, and V. Palmisano, "Feedback control foadaptive live video streaming," in Proc. ACM MMSys, Feb. 2011, pp.145-156. L. D. Cicco, S. Mascolo, and V. Palmisano, "Feedback control foadaptive live video streaming," in Proc. ACM MMSys, Feb. 2011, pp.145-156.

상기 문제점을 해결하기 위한 본 발명의 목적은 비디오 트래픽을 처리하는 네트워크 최적화 기술과 네트워크 상태에 따라 콘텐츠의 품질(bitrate)을 적응적으로 조절하는 적응적 스트리밍 서비스에서, 다중 경로를 이용하여 미디어 세그먼트를 전송할 때 클라이언트가 각 경로의 통합 대역폭을 측정하고 클라이언트로부터 블록 길이와 품질이 결정된 블록 단위 미디어 세그먼트의 요청에 따라 미디어 서버가 블록 단위로 세그먼트를 전송하는 시스템과 스트리밍 방법을 사용하여 사용자 체감 품질(QoE, Quality of Experience)을 향상시키기 위한, 적응적 스트리밍 서비스를 위한 다중 경로 기반 블록 전송 시스템을 제공한다. It is an object of the present invention to solve the above problems in a network optimization technology that processes video traffic and an adaptive streaming service that adaptively adjusts a content bitrate according to a network state, and a media segment is divided using multiple paths. When transmitting, the client measures the aggregate bandwidth of each path, and the media server transmits the segment in block units according to the request of the block unit media segment whose block length and quality are determined from the client. , Quality of Experience), and provides a multi-path-based block transmission system for adaptive streaming service.

본 발명의 다른 목적은 적응적 스트리밍 서비스를 위한 다중 경로 기반 블록 전송 스트리밍 방법을 제공한다.Another object of the present invention is to provide a multi-path based block transport streaming method for an adaptive streaming service.

본 발명의 목적을 달성하기 위해, 적응적 스트리밍 서비스를 위한 다중 경로 기반 블록 전송 시스템은, 다수의 네트워크 환경에서, 고품질의 영상을 끊김 없이 재생하고 사용자의 체감 품질(QoE)을 향상시키기 위해 적어도 하나 이상의 다중경로를 통해 블록의 길이와 품질(bitrate)을 결정하여 블록 단위로 미디어 세그먼트를 요청하는 클라이언트; 및 서로 다른 품질(bitrate)의 미디어 세그먼트를 저장하고, 상기 클라이언트로부터 블록 단위로 미디어 세그먼트를 요청받고, 미디어 세그먼트를 다수의 블록 단위 부분 세그먼트들로 분할하여 적응적 스트리밍 서비스를 제공하도록 블록 단위로 미디어 세그먼트를 전송하는 다수의 미디어 서버를 포함하고, In order to achieve the object of the present invention, a multi-path-based block transmission system for an adaptive streaming service is at least one in order to seamlessly reproduce a high-quality video and improve a user's quality of experience (QoE) in a plurality of network environments. A client requesting a media segment in block units by determining a block length and a bitrate through the above multipaths; And storing media segments of different qualities (bitrate), receiving a request for a media segment in block units from the client, and dividing the media segment into a plurality of block unit partial segments to provide an adaptive streaming service. Including a plurality of media servers for transmitting the segment,

상기 클라이언트는 둘 이상의 네트워크의 다중 경로를 통해 상기 다수의 미디어 서버와 연결되며, 상기 클라이언트는 콘텐츠 특성, 재생 장치 특성, 및 네트워크 특성을 고려하여 요청할 블록의 길이와 품질(bitrate)을 결정한 후, 다중경로를 통해 블록 단위로 미디어 세그먼트를 요청하며, The client is connected to the plurality of media servers through multiple paths of two or more networks, and the client determines the length and bitrate of the block to be requested in consideration of content characteristics, playback device characteristics, and network characteristics. Requests a media segment in block units through a path,

상기 콘텐츠 특성은 세그먼트의 크기, 길이이며, 상기 재생 장치 특성은 버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도이고, 상기 네트워크 특성은 둘 이상의 네트워크의 각 경로의 대역이며, The content characteristic is the size and length of the segment, the playback device characteristic is the amount of segments stored in the buffer, the speed at which the segment is stored in the buffer, and the network characteristic is the bandwidth of each path of two or more networks,

매니패스트 파일은 세그먼트 파일명, 미디어 세그먼트의 품질(bitrate), 세그먼트의 재생시간, 세그먼트의 크기를 포함하고,The manifest file includes the segment file name, media segment bitrate, segment duration, segment size, and

상기 클라이언트는 파서에서 상기 매니패스트 파일의 정보를 파싱 및 분석하여 미디어 세그먼트의 품질, 길이, 바이트 범위의 정보를 인지하고, 대역폭 측정 모듈, 블록 길이 적응 모듈, 블록 품질 적응 모듈, 블록 스케쥴링 모듈, 블록 단위 세그먼트 요청 모듈, 버퍼 점유율과 버퍼 충전 속도를 산출하는 버퍼를 포함하며, The client parses and analyzes the information of the manifest file in a parser to recognize the quality, length, and byte range information of the media segment, and the bandwidth measurement module, block length adaptation module, block quality adaptation module, block scheduling module, and block It includes a unit segment request module, a buffer that calculates the buffer occupancy rate and the buffer charging rate,

상기 대역폭 측정 모듈이 통합 대역폭을 측정한 후, 블록 길이 적응(Block Length Adaptation) 모듈과 블록 품질 적응(Block Quality Adaptation) 모듈은 사용자 단말의 접속에 따라 변화하는 네트워크 환경에 끊김 없는 비디오 재생을 위해 콘텐츠 특성(세그먼트 크기, 길이, 재생시간), 재생 장치 특성(버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도), 그리고 네트워크 특성(각 경로의 대역폭 총합)을 고려하여 블록의 길이(N)와 블록의 품질(bitrate)을 결정하고, After the bandwidth measurement module measures the integrated bandwidth, the block length adaptation module and the block quality adaptation module provide content for seamless video playback in the network environment that changes according to the connection of the user terminal. The length (N) of the block taking into account the characteristics (segment size, length, playback time), playback device characteristics (the amount of segments stored in the buffer, the speed at which segments are stored in the buffer), and network characteristics (the total bandwidth of each path). ) And block quality (bitrate),

다중경로 기반 블록 전송 스트리밍 서비스에서 블록의 길이(N)는 스트리밍의 네트워크 변화에 대한 적응 속도와 품질 변경 빈도수에 영향을 주며, In the multipath-based block transmission streaming service, the block length (N) affects the adaptation speed and quality change frequency of the streaming network.

적응적 스트리밍 서비스를 제공하는 미디어 서버와 클라이언트를 구비하는 다중경로 기반 블록 전송 시스템은 재생 장치 특성 정보(버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도)를 이용하여 블록의 길이(N)를 결정해야 하며, 상기 다중경로 기반 블록 전송 시스템은 요청할 블록의 품질(V)과 길이(N)를 결정한 후, 다수의 HTTP Range Request를 이용하여 2N개의 Partial Segment를 각 경로를 통해 각각의 미디어 서버로 요청한다. A multipath-based block transmission system including a media server and a client that provides an adaptive streaming service uses the playback device characteristic information (the amount of segments stored in the buffer, the speed at which the segments are stored in the buffer) to determine the length of the block (N ), and the multipath-based block transmission system determines the quality (V) and length (N) of the block to be requested, and then uses a number of HTTP Range Requests to transmit 2N Partial Segments to each media through each path. Make a request to the server.

본 발명의 다른 목적을 달성하기 위해, 적응적 스트리밍 서비스를 위한 다중 경로 기반 블록 전송 스트리밍 방법은 (a) 다수의 네트워크 환경에서, 고품질의 영상을 끊김 없이 재생하고 사용자의 체감 품질(QoE)을 향상시키기 위해 클라이언트가 네트워크의 적어도 하나 이상의 다중경로를 통해 블록의 길이와 품질(bitrate)을 결정하여 블록 단위로 미디어 세그먼트를 요청하는 단계; 및 (b) 다수의 미디어 서버는 서로 다른 품질(bitrate)의 미디어 세그먼트를 저장하고, 상기 클라이언트로부터 블록 단위로 미디어 세그먼트를 요청받고, 미디어 세그먼트를 다수의 블록 단위 부분 세그먼트들로 분할하여 적응적 스트리밍 서비스를 제공하도록 블록 단위로 미디어 세그먼트를 클라이언트로 전송하는 단계를 포함하고, In order to achieve another object of the present invention, a multi-path-based block transmission streaming method for an adaptive streaming service includes (a) seamlessly playing high-quality video and improving user experience quality (QoE) in multiple network environments. Requesting a media segment in units of blocks by determining a block length and a bitrate through at least one multipath of a network in order to achieve this; And (b) a plurality of media servers store media segments of different quality (bitrate), receive a request for a media segment in block units from the client, and divide the media segment into a plurality of block unit partial segments for adaptive streaming. Including the step of transmitting the media segment to the client in block units to provide a service,

상기 클라이언트는 둘 이상의 네트워크의 다중 경로를 통해 상기 다수의 미디어 서버와 연결되며, 상기 클라이언트는 콘텐츠 특성, 재생 장치 특성, 및 네트워크 특성을 고려하여 요청할 블록의 길이와 품질(bitrate)을 결정한 후, 다중경로를 통해 블록 단위로 미디어 세그먼트를 요청하며, The client is connected to the plurality of media servers through multiple paths of two or more networks, and the client determines the length and bitrate of the block to be requested in consideration of content characteristics, playback device characteristics, and network characteristics. Requests a media segment in block units through a path,

상기 콘텐츠 특성은 세그먼트의 크기, 길이이며, 상기 재생 장치 특성은 버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도이고, 상기 네트워크 특성은 둘 이상의 네트워크의 각 경로의 대역이며, The content characteristic is the size and length of the segment, the playback device characteristic is the amount of segments stored in the buffer, the speed at which the segment is stored in the buffer, and the network characteristic is the bandwidth of each path of two or more networks,

매니패스트 파일은 세그먼트 파일명, 미디어 세그먼트의 품질(bitrate), 세그먼트의 재생시간, 세그먼트의 크기를 포함하고,The manifest file includes the segment file name, media segment bitrate, segment duration, segment size, and

상기 클라이언트는 파서에서 상기 매니패스트 파일의 정보를 파싱 및 분석하여 미디어 세그먼트의 품질, 길이, 바이트 범위의 정보를 인지하고, 대역폭 측정 모듈, 블록 길이 적응 모듈, 블록 품질 적응 모듈, 블록 스케쥴링 모듈, 블록 단위 세그먼트 요청 모듈, 버퍼 점유율과 버퍼 충전 속도를 산출하는 버퍼를 포함하며, The client parses and analyzes the information of the manifest file in a parser to recognize the quality, length, and byte range information of the media segment, and the bandwidth measurement module, block length adaptation module, block quality adaptation module, block scheduling module, and block It includes a unit segment request module, a buffer that calculates the buffer occupancy rate and the buffer charging rate,

상기 대역폭 측정 모듈이 통합 대역폭을 측정한 후, 블록 길이 적응(Block Length Adaptation) 모듈과 블록 품질 적응(Block Quality Adaptation) 모듈은 사용자 단말의 접속에 따라 변화하는 네트워크 환경에 끊김 없는 비디오 재생을 위해 콘텐츠 특성(세그먼트 크기, 길이, 재생시간), 재생 장치 특성(버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도), 그리고 네트워크 특성(각 경로의 대역폭 총합)을 고려하여 블록의 길이(N)와 블록의 품질(bitrate)을 결정하고, After the bandwidth measurement module measures the integrated bandwidth, the block length adaptation module and the block quality adaptation module provide content for seamless video playback in the network environment that changes according to the connection of the user terminal. The length (N) of the block taking into account the characteristics (segment size, length, playback time), playback device characteristics (the amount of segments stored in the buffer, the speed at which segments are stored in the buffer), and network characteristics (the total bandwidth of each path). ) And block quality (bitrate),

다중경로 기반 블록 전송 스트리밍 서비스에서 블록의 길이(N)는 스트리밍의 네트워크 변화에 대한 적응 속도와 품질 변경 빈도수에 영향을 주며, In the multipath-based block transmission streaming service, the block length (N) affects the adaptation speed and quality change frequency of the streaming network.

적응적 스트리밍 서비스를 제공하는 미디어 서버와 클라이언트를 구비하는 다중경로 기반 블록 전송 시스템은 재생 장치 특성 정보(버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도)를 이용하여 블록의 길이(N)를 결정해야 하며, 상기 다중경로 기반 블록 전송 시스템은 요청할 블록의 품질(V)과 길이(N)를 결정한 후, 다수의 HTTP Range Request를 이용하여 2N개의 Partial Segment를 각 경로를 통해 각각의 미디어 서버로 요청한다. A multipath-based block transmission system including a media server and a client that provides an adaptive streaming service uses the playback device characteristic information (the amount of segments stored in the buffer, the speed at which the segments are stored in the buffer) to determine the length of the block (N ), and the multipath-based block transmission system determines the quality (V) and length (N) of the block to be requested, and then uses a number of HTTP Range Requests to transmit 2N Partial Segments to each media through each path. Make a request to the server.

본 발명의 적응적 스트리밍 서비스를 위한 다중 경로 기반 블록 전송 시스템 및 스트리밍 방법은 적응적 스트리밍 서비스에서 다중 경로를 이용하여 미디어 세그먼트를 전송할 때 블록 단위로 세그먼트를 전송하는 시스템과 스트리밍 방법을 이용하여 사용자 체감 품질(QoE, Quality of Experience)을 향상시키는 효과가 있다. The multi-path-based block transmission system and streaming method for an adaptive streaming service of the present invention uses a system for transmitting segments in block units and a streaming method when media segments are transmitted using multiple paths in an adaptive streaming service. It has the effect of improving the quality (QoE, Quality of Experience).

적응적 스트리밍 서비스에서 다중 경로 기반 블록 전송 시스템을 제공함으로써 재생 끊김 현상 없이 고품질의 미디어를 제공하고, 비디오 재생 품질의 변화 빈도수를 줄임으로써 사용자에게 높은 체감 품질(QoE)을 제공할 수 있다.By providing a multi-path based block transmission system in an adaptive streaming service, high-quality media can be provided without interruption in playback, and high quality of experience (QoE) can be provided to users by reducing the frequency of change in video playback quality.

상기 적응적 스트리밍 서비스는 적응적 스트리밍 기술이 적용된 VoD 서비스, 적응적 스트리밍 기술이 적용된 IPTV 서비스, Web 기반 적응적 스트리밍 서비스, Mobile 단말기 기반 적응적 스트리밍 서비스, 초 고품질 미디어 스트리밍 서비스에 적용 가능하다. The adaptive streaming service is applicable to VoD service to which adaptive streaming technology is applied, IPTV service to which adaptive streaming technology is applied, adaptive streaming service based on Web, adaptive streaming service based on mobile terminal, and ultra-high quality media streaming service.

도 1은 종래의 적응적 스트리밍 서비스의 콘텐츠 특성 기반의 체감 품질 향상을 위한 클라이언트/서버 시스템 구조를 보인 그림이다.
도 2는 다중경로 기반 블록 전송 시스템의 시나리오를 나타낸 도면이다.
도 3은 다중경로 기반 블록 전송 시스템의 동작을 설명한 도면이다.
도 4는 다중경로 기반 블록 전송 시스템 구성도이다.
도 5는 다중경로 기반 블록 전송 시스템의 블록 전송 방법을 나타낸 도면이다.
도 6은 다중경로 기반 블록 전송 시스템의 동작 순서도이다.
1 is a diagram showing a structure of a client/server system for improving haptic quality based on content characteristics of a conventional adaptive streaming service.
2 is a diagram showing a scenario of a multipath-based block transmission system.
3 is a diagram illustrating an operation of a multipath-based block transmission system.
4 is a block diagram of a multipath-based block transmission system.
5 is a diagram illustrating a block transmission method in a multipath-based block transmission system.
6 is a flowchart illustrating an operation of a multipath-based block transmission system.

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

본 발명의 적응적 스트리밍 서비스를 위한 다중 경로 기반 블록 전송 시스템 및 스트리밍 방법은 비디오 트래픽을 처리하는 네트워크 최적화 기술과 네트워크 상태(대역폭)에 따라 콘텐츠의 품질(비디오 세그먼트의 크기, 세그먼트의 재생시간)을 적응적으로 조절하는 적응적 스트리밍 서비스에서, 네트워크1, 네트워크2의 경로를 통해 각각의 NIC(Network Interface Card) 카드를 통해 네트워크의 적어도 둘 이상의 다중 경로를 이용하여 미디어 세그먼트를 클라이언트(미디어 플레이어)로 전송할 때, 클라이언트가 대역폭을 측정하고 클라이언트로부 블록 길이와 품질이 결정된 블록 단위 미디어 세그먼트의 요청에 따라 미디어 서버가 블록 단위로 세그먼트를 전송하는 시스템과 스트리밍 방법을 사용하여 사용자 체감 품질(QoE, Quality of Experience)을 향상시키기 위한 것이다.The multi-path-based block transmission system and streaming method for an adaptive streaming service of the present invention determine the quality of content (video segment size, segment playback time) according to network optimization technology and network conditions (bandwidth) for processing video traffic. In an adaptive streaming service that adjusts adaptively, a media segment is transferred to a client (media player) by using at least two multi-paths of the network through each network interface card (NIC) card through the paths of network 1 and network 2. When transmitting, the client measures the bandwidth and the media server transmits the segment in block units according to the request of the block unit media segment whose block length and quality are determined from the client. of experience).

적응적 스트리밍 서비스를 위한 다중경로 기반 블록 전송 시스템 및 스트리밍 방법은 다중경로 환경에서 고품질의 영상을 끊김 없이 재생하고 불필요한 품질 변경을 최소화하여 사용자의 체감 품질(QoE)을 향상시키기 위해 다중경로를 통해 세그먼트를 블록 단위로 요청한다. 본 발명에서 제안하는 적응적 스트리밍 서비스를 위한 다중경로 기반 블록 전송 시스템은 콘텐츠 특성(세그먼트 크기, 길이), 재생 장치 특성(버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도), 그리고 네트워크 특성(각 경로의 대역폭)을 고려하여 요청할 블록의 길이와 품질(bitrate)을 결정한 후 다중경로를 통해 블록 단위로 미디어 세그먼트를 요청한다.Multi-path based block transmission system and streaming method for adaptive streaming service segment through multi-path to improve user's quality of experience (QoE) by seamlessly playing high-quality video in a multi-path environment and minimizing unnecessary quality changes. Is requested in block units. The multipath-based block transmission system for an adaptive streaming service proposed in the present invention includes content characteristics (segment size, length), playback device characteristics (amount of segments stored in a buffer, speed at which segments are stored in a buffer), and a network. After determining the length and bitrate of the block to be requested in consideration of the characteristics (bandwidth of each path), the media segment is requested in block units through multipath.

예를들면, 미디어 세그먼트는 HAS의 원래 비디오 데이터(60분 데이터)가 분할되어 쪼개된 다수의 미디어 세그먼트(2분 데이터)이다. For example, a media segment is a plurality of media segments (two-minute data) in which the original video data of the HAS (60-minute data) is divided and split.

블록(block)은 다수의 미디어 세그먼트의 집합(예, 12분/10분/8분/6분...)으로써, 미디어 서버로 블록 단위로 미디어 세그먼트를 요청하는 단위다. A block is a set of multiple media segments (eg, 12 minutes/10 minutes/8 minutes/6 minutes...), and is a unit that requests a media segment in block units to the media server.

도 2는 다중경로 기반 블록 전송 시스템의 시나리오를 나타낸다. 2 shows a scenario of a multipath-based block transmission system.

다중경로 기반 블록 전송 시스템은 네트워크 환경에서 적어도 둘 이상의 다중경로 환경에서 고품질의 영상을 끊김 없이 재생하고 불필요한 품질 변경을 최소화하여 사용자의 체감 품질(QoE)을 향상시키기 위해 다수의 NIC 카드를 통해 적어도 하나 이상의 다중경로를 통해 콘텐츠 특성(세그먼트 크기, 길이, 재생시간), 재생 장치 특성(버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도), 및 네트워크 특성(각 경로의 대역폭)을 고려하여 요청할 블록의 길이와 품질(bitrate)을 결정한 후 다중경로를 통해 블록 단위로 미디어 세그먼트를 요청하는 클라이언트(Client); 및 The multipath-based block transmission system seamlessly reproduces high-quality video in at least two or more multipath environments in a network environment and minimizes unnecessary quality changes to improve user experience quality (QoE) through at least one NIC card. Through the above multi-paths, the content characteristics (segment size, length, playback time), playback device characteristics (amount of segments stored in the buffer, speed at which segments are stored in the buffer), and network characteristics (bandwidth of each path) are considered. A client that requests a media segment in block units through multipath after determining the length and bitrate of the block to be requested; And

서로 다른 품질(bitrate)의 미디어 세그먼트를 저장하고 상기 클라이언트로부터 블록 단위로 미디어 세그먼트를 요청받고, 미디어 세그먼트를 다수의 블록 단위 부분 세그먼트들로 분할하여 적응적 스트리밍 서비스를 제공하도록 블록 단위로 미디어 세그먼트를 전송하는 다수의 미디어 서버(Media Server)를 포함하고, It stores media segments of different quality (bitrate), receives a media segment request in block units from the client, and divides the media segment into a plurality of block unit partial segments to provide an adaptive streaming service. Including a plurality of media servers (Media Server) to transmit,

상기 클라이언트는 둘 이상의 네트워크의 다중 경로를 통해 상기 다수의 미디어 서버와 연결되며, 상기 클라이언트는 콘텐츠 특성, 재생 장치 특성, 및 네트워크 특성을 고려하여 요청할 블록의 길이와 품질(bitrate)을 결정한 후, 다중경로를 통해 블록 단위로 미디어 세그먼트를 요청하며, The client is connected to the plurality of media servers through multiple paths of two or more networks, and the client determines the length and bitrate of the block to be requested in consideration of content characteristics, playback device characteristics, and network characteristics. Requests a media segment in block units through a path,

상기 클라이언트는 파서에서 매니패스트 파일의 정보를 파싱 및 분석하여 미디어 세그먼트의 품질, 길이, 바이트 범위의 정보를 인지하고, 상기 클라이언트는 대역폭 측정 모듈, 블록 길이 적응 모듈, 블록 품질 적응 모듈, 블록 스케쥴링 모듈, 블록 단위 세그먼트 요청 모듈, 버퍼 점유율과 버퍼 충전 속도를 산출하는 버퍼를 포함하며, The client parses and analyzes the information of the manifest file in the parser to recognize information on the quality, length, and byte range of the media segment, and the client is a bandwidth measurement module, a block length adaptation module, a block quality adaptation module, and a block scheduling module. , A block-by-block segment request module, and a buffer that calculates the buffer occupancy rate and the buffer charging rate,

상기 대역폭 측정 모듈이 통합 대역폭을 측정한 후, 블록 길이 적응(Block Length Adaptation) 모듈과 블록 품질 적응(Block Quality Adaptation) 모듈은 사용자 단말의 접속에 따라 변화하는 네트워크 환경에 끊김 없는 비디오 재생을 위해 콘텐츠 특성(세그먼트 크기, 길이, 재생시간), 재생 장치 특성(버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도), 그리고 네트워크 특성(각 경로의 대역폭 총합)을 고려하여 블록의 길이(N)와 블록의 품질(bitrate)을 결정한다. After the bandwidth measurement module measures the integrated bandwidth, the block length adaptation module and the block quality adaptation module provide content for seamless video playback in the network environment that changes according to the connection of the user terminal. The length (N) of the block taking into account the characteristics (segment size, length, playback time), playback device characteristics (the amount of segments stored in the buffer, the speed at which segments are stored in the buffer), and network characteristics (the total bandwidth of each path). ) And the block quality (bitrate).

다중경로 기반 블록 전송 스트리밍 서비스에서 블록의 길이(N)는 스트리밍의 네트워크 변화에 대한 적응 속도와 품질 변경 빈도수에 영향을 주며, In the multipath-based block transmission streaming service, the block length (N) affects the adaptation speed and quality change frequency of the streaming network.

적응적 스트리밍 서비스를 제공하는 미디어 서버와 클라이언트를 구비하는 다중경로 기반 블록 전송 시스템은 재생 장치 특성 정보(버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도)를 이용하여 적절한 블록의 길이(N)를 결정해야 하며, 상기 다중경로 기반 블록 전송 시스템은 요청할 블록의 품질(V)과 길이(N)를 결정한 후, 다수의 HTTP Range Request를 이용하여 2N개의 Partial Segment를 각 경로를 통해 각각의 미디어 서버로 요청한다. A multipath-based block transmission system including a media server and a client that provides an adaptive streaming service uses the characteristic information of the playback device (the amount of segments stored in the buffer, the speed at which the segments are stored in the buffer), and uses the appropriate block length ( N) must be determined, and the multipath-based block transmission system determines the quality (V) and length (N) of the block to be requested, and then sends 2N partial segments through each path using multiple HTTP Range Requests. Make a request to the media server.

상기 클라이언트는 둘 이상의 네트워크의 다중 경로를 통해 상기 다수의 미디어 서버와 연결되며, 상기 클라이언트는 콘텐츠 특성, 재생 장치 특성, 및 네트워크 특성을 고려하여 요청할 블록의 길이와 품질(bitrate)을 결정한 후, 다중경로를 통해 블록 단위로 미디어 세그먼트를 요청하며, The client is connected to the plurality of media servers through multiple paths of two or more networks, and the client determines the length and bitrate of the block to be requested in consideration of content characteristics, playback device characteristics, and network characteristics. Requests a media segment in block units through a path,

상기 콘텐츠 특성은 세그먼트 크기, 길이이며, The content characteristics are segment size and length,

상기 재생 장치 특성은 버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도이고, The playback device characteristics are the amount of segments stored in the buffer, the speed at which segments are stored in the buffer,

상기 네트워크 특성은 둘 이상의 네트워크의 각 경로의 대역폭 이다. The network characteristic is the bandwidth of each path of two or more networks.

상기 클라이언트(Client)는 다중경로 환경에서 네트워크의 대역폭을 모두 활용하기 위해 예를들면, 네트워크1, 네트워크2의 각 경로의 대역폭(

Figure pat00001
)을 모두 더한 통합 대역폭(
Figure pat00002
)을 측정한다. 클라이언트는 통합 대역폭(BW1 + BW2)을 기반으로 요청할 블록의 길이와 품질(bitrate)을 결정한 후, 블록(block)을 다수의 부분 세그먼트들로 분할하여 다수의 네트워크(NET1, NET2)의 각 경로를 통해 요청한다. 네트워크들의 다중경로 환경에서 클라이언트는 블록의 길이와 품질(bitrate)이 결정된 블록 단위로 미디어 세그먼트를 미디어 서버로 요청함으로써, 고품질의 비디오 콘텐츠를 끊김 없이 재생하고 품질 변경을 최소화해 사용자의 체감 품질(QoE)을 향상시킨다. In order to utilize all the bandwidth of the network in a multipath environment, the client, for example, the bandwidth of each path of network 1 and network 2 (
Figure pat00001
) Plus the aggregated bandwidth (
Figure pat00002
) Is measured. The client determines the length and bitrate of the block to be requested based on the aggregated bandwidth (BW1 + BW2), and then divides the block into a number of partial segments to divide each path of a number of networks (NET1, NET2). Request through. In the multipath environment of networks, the client requests media segments in blocks with the block length and bitrate determined to the media server, thereby seamlessly playing high-quality video content and minimizing quality changes to the user's perceived quality (QoE). ) To improve.

도 3은 다중경로 기반 블록 전송 시스템의 동작을 설명한 도면을 나타낸다. 3 is a diagram illustrating an operation of a multipath-based block transmission system.

다중경로 기반 블록 전송 시스템의 Client는 5단계로 나누어 동작한다.The client of the multipath-based block transmission system operates in 5 steps.

클라이언트는 대역폭 측정 모듈, 블록 길이 적응 모듈, 블록 품질 적응 모듈, 블록 스케쥴링 모듈, 블록 단위 세그먼트 요청 모듈 및 버퍼를 포함한다. The client includes a bandwidth measurement module, a block length adaptation module, a block quality adaptation module, a block scheduling module, a block unit segment request module, and a buffer.

클라이언트의 대역폭 측정(Bandwidth Estimation) 모듈은 미디어 서버로부터 블록 단위 세그먼트를 다운로드 할 때마다, Aggregated Bandwidth Estimation 단계에서 네트워크의 통합 대역폭(각 경로의 통합 대역폭)을 측정한다.The client's bandwidth estimation module measures the aggregated bandwidth of the network (integrated bandwidth of each path) in the Aggregated Bandwidth Estimation step whenever a block-by-block segment is downloaded from the media server.

대역폭 측정(Bandwidth Estimation) 모듈이 통합 대역폭을 측정한 후, 블록 길이 적응(Block Length Adaptation) 모듈과 블록 품질 적응(Block Quality Adaptation) 모듈은 사용자 단말의 접속에 따라 변화하는 네트워크 환경에 끊김 없는 비디오 재생을 위해 콘텐츠 특성(세그먼트 크기, 길이, 재생시간), 재생 장치 특성(버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도), 그리고 네트워크 특성(각 경로의 대역폭 총합)을 고려하여 블록의 길이와 블록의 품질(bitrate)을 결정한다. After the Bandwidth Estimation module measures the integrated bandwidth, the Block Length Adaptation module and the Block Quality Adaptation module seamlessly play video in the network environment that changes according to the connection of the user terminal. For this, the content characteristics (segment size, length, playback time), playback device characteristics (amount of segments stored in the buffer, speed at which segments are stored in the buffer), and network characteristics (total bandwidth of each path) are considered. Determine the length and bitrate of the block.

블록 길이 적응(Block Length Adaptation) 모듈은 네트워크의 통합 대역폭, 버퍼에 저장된 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도를 이용하여 다음에 요청할 블록의 길이를 결정한다. The Block Length Adaptation module determines the length of the next block to be requested using the aggregate bandwidth of the network, the amount of segments stored in the buffer, and the rate at which segments are stored in the buffer.

블록 품질 적응(Block Quality Adaptation) 모듈은 네트워크의 통합 대역폭, 요청할 블록의 길이, 세그먼트의 크기 정보를 이용하여 요청할 블록의 품질을 결정한다. The Block Quality Adaptation module determines the quality of the block to be requested using information on the aggregate bandwidth of the network, the length of the block to be requested, and the size of the segment.

블록 스케쥴링(Block Scheduling) 모듈은 블록을 구성하는 다수의 세그먼트를 재정렬 문제가 발생하지 않도록 동시에 다운로드를 완료하기 위해 네트워크의 각 경로를 통해 요청할 부분 세그먼트(Partial Segment)의 바이트 범위를 결정한다. The Block Scheduling module determines the byte range of a partial segment to be requested through each path of the network in order to complete the download at the same time so as not to cause a problem of rearrangement of a plurality of segments constituting a block.

블록 단위 세그먼트 요청(Block Request) 모듈은 Block Request 단계에서는, 블록 스케쥴링(Blcok Scheduling) 모듈에 의해 결정된 부분 세그먼트(Partial Segment) 크기를 기반으로 요청할 세그먼트의 바이트 범위를 결정하여 다수의 HTTP Range Request를 통해 각 미디어 서버로 블록 길이와 품질(bitrate)을 갖는 블록을 구성하는 다수의 Partial Segment를 요청한다.In the Block Request stage, the Block Request module determines the byte range of the segment to be requested based on the partial segment size determined by the Block Scheduling module through multiple HTTP Range Requests. Each media server requests a number of Partial Segments that compose a block with a block length and bitrate.

버퍼(Buffer)는 세그먼트(segment)를 미디어 서버로부터 다운로드 할 때마다, 세그먼트의 재생 길이만큼 버퍼 점유량을 증가시키며, 버퍼 점유율과 버퍼 충전 속도를 산출한다. Whenever a segment is downloaded from the media server, the buffer increases the occupied amount of the buffer by the playback length of the segment, and calculates the occupancy of the buffer and the filling speed of the buffer.

도 4는 다중경로 기반 블록 전송 시스템 구성도를 보여준다. 4 shows a block diagram of a multipath-based block transmission system.

비디오 콘텐츠에 대한 정보를 담고 있는 매니패스트 파일(Manifest File)은 세그먼트 파일명, 미디어 세그먼트의 품질(bitrate), 세그먼트의 재생시간, 세그먼트의 크기를 포함한다. The Manifest File, which contains information on video content, includes the segment file name, media segment bitrate, segment playback time, and segment size.

미디어 서버(Media Server)로부터 비디오 콘텐츠에 대한 정보를 담고 있는 매니패스트 파일을 클라이언트(미디어 플레이어)로 수신하면, 클라이언트의 파서(Parser)에서 매니패스트 파일의 정보를 파싱 및 분석하여 미디어 세그먼트의 품질(bitrate), 길이, 바이트 범위의 정보를 인지한다. 그리고 대역폭 측정 (Bandwidth Estimation) 모듈은 미디어 서버로 블록을 요청하고 수신할 때마다 블록의 크기와 블록을 수신하는 시간을 이용하여 대역폭을 측정한다. When a manifest file containing information about video content is received from a media server to a client (media player), the parser of the client parses and analyzes the information of the manifest file to determine the quality of the media segment ( bitrate), length, and byte range information. In addition, the bandwidth estimation module requests a block from the media server and measures the bandwidth by using the size of the block and the time to receive the block each time it is received.

버퍼 모니터(Buffer Monitor)는 재생 장치 특성 정보를 얻기 위해 현재 재생 장치의 버퍼에 저장되어 있는 세그먼트의 양과 버퍼에 세그먼트가 저장되는 속도를 측정한다.The Buffer Monitor measures the amount of segments currently stored in the buffer of the playback device and the speed at which the segments are stored in the buffer in order to obtain information on the characteristics of the playback device.

블록 길이 적응(Block Length Adaptation) 모듈은 네트워크의 통합 대역폭, 버퍼에 저장된 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도를 이용하여 다음에 요청할 블록의 길이를 결정한다. The Block Length Adaptation module determines the length of the next block to be requested using the aggregate bandwidth of the network, the amount of segments stored in the buffer, and the rate at which segments are stored in the buffer.

블록 품질 적응(Block Quality Adaptation) 모듈은 네트워크의 통합 대역폭, 요청할 블록의 길이, 세그먼트의 크기 정보를 이용하여 요청할 블록의 품질을 결정한다. The Block Quality Adaptation module determines the quality of the block to be requested using information on the aggregate bandwidth of the network, the length of the block to be requested, and the size of the segment.

블록 스케쥴링(Block Scheduling) 모듈은 네트워크의 각 경로를 통해 요청할 부분 세그먼트(Partial Segment)의 바이트 범위를 결정한다. The block scheduling module determines the byte range of a partial segment to be requested through each path of the network.

블록 단위 세그먼트 요청(Block Request) 모듈은 Block Scheduling을 통해 Partial Segment에 대한 HTTP Range Request 메시지를 각 경로를 통해 미디어 서버로 전송한다. 미디어 서버로의 요청을 통해 미디어 서버로부터 클라이언트로 수신된 Partial Segment는 재생 장치의 버퍼에 저장된 후, 디코딩 되어 미디어 플레이어에서 재생된다.The Block Request module transmits the HTTP Range Request message for Partial Segment to the media server through each path through Block Scheduling. Partial segments received from the media server to the client through the request to the media server are stored in the buffer of the playback device, then decoded and played in the media player.

도 5는 다중경로 기반 블록 전송 시스템의 블록 전송 방법을 보여준다. 5 shows a block transmission method in a multipath-based block transmission system.

다중경로 기반 블록 전송 스트리밍 서비스에서 블록 길이(N)는 스트리밍의 네트워크 변화에 대한 적응 속도와 품질 변경 빈도수에 영향을 미친다. N의 값이 클 경우 불필요한 품질 변화를 줄일 수 있지만 네트워크의 변화에 빠르게 적응하지 못해 재생 끊김이 발생할 가능성이 높아진다. 상대적으로 N의 값이 작을 경우 네트워크 변화에 빠르게 적응하지만 불필요한 품질 변화가 발생할 가능성이 높아진다. In a multipath-based block transmission streaming service, the block length (N) affects the speed of adaptation to the network change of streaming and the frequency of quality change. If the value of N is large, unnecessary quality changes can be reduced, but it is not possible to quickly adapt to changes in the network, which increases the likelihood of playback interruption. If the value of N is relatively small, it adapts quickly to network changes, but the possibility of unnecessary quality changes increases.

따라서, 적응적 스트리밍 서비스를 제공하는 미디어 서버와 클라이언트를 구비하는 다중경로 기반 블록 전송 시스템은 재생 장치 특성 정보(버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도)를 이용하여 적절한 N을 결정한다. 다중경로 기반 블록 전송 시스템은 요청할 블록의 품질(V)과 길이(N)를 결정한 후, 다수의 HTTP Range Request를 이용하여 2N개의 Partial Segment를 각 경로를 통해 각각의 미디어 서버로 요청한다.Therefore, a multipath-based block transmission system including a media server and a client that provides an adaptive streaming service uses the playback device characteristic information (the amount of segments stored in the buffer, the speed at which the segments are stored in the buffer) to determine the appropriate N. Decide. The multipath-based block transmission system determines the quality (V) and length (N) of the block to be requested, and then requests 2N Partial Segments to each media server through each path using multiple HTTP Range Requests.

또한, 본 발명의 적응적 스트리밍 서비스를 위한 다중 경로 기반 블록 전송 방법은 (a) 다수의 네트워크 환경에서, 고품질의 영상을 끊김 없이 재생하고 사용자의 체감 품질(QoE)을 향상시키기 위해 클라이언트가 네트워크의 적어도 하나 이상의 다중경로를 통해 블록의 길이와 품질(bitrate)을 결정하여 블록 단위로 미디어 세그먼트를 요청하는 단계; 및 In addition, the multi-path-based block transmission method for the adaptive streaming service of the present invention is (a) in a number of network environments, in order to seamlessly play a high-quality video and improve the quality of experience (QoE) of the user, the client Determining a length and a bitrate of a block through at least one multipath and requesting a media segment for each block; And

(b) 다수의 미디어 서버는 서로 다른 품질(bitrate)의 미디어 세그먼트를 저장하고, 상기 클라이언트로부터 블록 단위로 미디어 세그먼트를 요청받고, 미디어 세그먼트를 다수의 블록 단위 부분 세그먼트들로 분할하여 적응적 스트리밍 서비스를 제공하도록 블록 단위로 미디어 세그먼트를 클라이언트로 전송하는 단계를 포함하고, (b) Multiple media servers store media segments of different quality (bitrate), receive a request for a media segment in block units from the client, and divide the media segment into a plurality of block unit partial segments to provide an adaptive streaming service. Transmitting the media segment to the client in block units to provide a,

상기 클라이언트는 둘 이상의 네트워크의 다중 경로를 통해 상기 다수의 미디어 서버와 연결되며, 상기 클라이언트는 콘텐츠 특성, 재생 장치 특성, 및 네트워크 특성을 고려하여 요청할 블록의 길이와 품질(bitrate)을 결정한 후, 다중경로를 통해 블록 단위로 미디어 세그먼트를 요청하며, The client is connected to the plurality of media servers through multiple paths of two or more networks, and the client determines the length and bitrate of the block to be requested in consideration of content characteristics, playback device characteristics, and network characteristics. Requests a media segment in block units through a path,

상기 콘텐츠 특성은 세그먼트의 크기, 길이이며, 상기 재생 장치 특성은 버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도이고, 상기 네트워크 특성은 둘 이상의 네트워크의 각 경로의 대역이며, The content characteristic is the size and length of the segment, the playback device characteristic is the amount of segments stored in the buffer, the speed at which the segment is stored in the buffer, and the network characteristic is the bandwidth of each path of two or more networks,

매니패스트 파일은 세그먼트 파일명, 미디어 세그먼트의 품질(bitrate), 세그먼트의 재생시간, 세그먼트의 크기를 포함하고,The manifest file includes the segment file name, media segment bitrate, segment duration, segment size, and

상기 클라이언트는 파서에서 상기 매니패스트 파일의 정보를 파싱 및 분석하여 미디어 세그먼트의 품질, 길이, 바이트 범위의 정보를 인지하고, 상기 클라이언트는 대역폭 측정 모듈, 블록 길이 적응 모듈, 블록 품질 적응 모듈, 블록 스케쥴링 모듈, 블록 단위 세그먼트 요청 모듈, 버퍼 점유율과 버퍼 충전 속도를 산출하는 버퍼를 포함하며, The client parses and analyzes the information of the manifest file in a parser to recognize the quality, length, and byte range information of the media segment, and the client is a bandwidth measurement module, a block length adaptation module, a block quality adaptation module, and block scheduling. It includes a module, a segment request module for each block, a buffer that calculates the buffer occupancy rate and the buffer charging rate,

상기 대역폭 측정 모듈이 통합 대역폭을 측정한 후, 블록 길이 적응(Block Length Adaptation) 모듈과 블록 품질 적응(Block Quality Adaptation) 모듈은 사용자 단말의 접속에 따라 변화하는 네트워크 환경에 끊김 없는 비디오 재생을 위해 콘텐츠 특성(세그먼트의 크기, 길이, 재생시간), 재생 장치 특성(버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도), 그리고 네트워크 특성(각 경로의 대역폭 총합)을 고려하여 블록의 길이와 블록의 품질(bitrate)을 결정한다.After the bandwidth measurement module measures the integrated bandwidth, the block length adaptation module and the block quality adaptation module provide content for seamless video playback in the network environment that changes according to the connection of the user terminal. The length of the block and the length of the block considering the characteristics (segment size, length, playback time), playback device characteristics (the amount of segments stored in the buffer, the speed at which segments are stored in the buffer), and network characteristics (the total bandwidth of each path). Determine the bitrate of the block.

상기 클라이언트는 둘 이상의 네트워크의 다중 경로를 통해 상기 다수의 미디어 서버와 연결되며, 상기 클라이언트는 콘텐츠 특성, 재생 장치 특성, 및 네트워크 특성을 고려하여 요청할 블록의 길이와 품질(bitrate)을 결정한 후, 다중경로를 통해 블록 단위로 미디어 세그먼트를 요청하며, The client is connected to the plurality of media servers through multiple paths of two or more networks, and the client determines the length and bitrate of the block to be requested in consideration of content characteristics, playback device characteristics, and network characteristics. Requests a media segment in block units through a path,

상기 콘텐츠 특성은 세그먼트 크기, 길이이며, The content characteristics are segment size and length,

상기 재생 장치 특성은 버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도이고, The playback device characteristics are the amount of segments stored in the buffer, the speed at which segments are stored in the buffer,

상기 네트워크 특성은 둘 이상의 네트워크의 각 경로의 대역폭 이며, The network characteristic is the bandwidth of each path of two or more networks,

매니패스트 파일은 세그먼트 파일명, 미디어 세그먼트의 품질(bitrate), 세그먼트의 재생시간, 세그먼트의 크기를 포함한다. The manifest file includes the segment file name, media segment bitrate, segment playback time, and segment size.

상기 클라이언트는 대역폭 측정 모듈, 블록 길이 적응 모듈, 블록 품질 적응 모듈, 블록 스케쥴링 모듈, 블록 단위 세그먼트 요청 모듈 및 버퍼를 포함하며, The client includes a bandwidth measurement module, a block length adaptation module, a block quality adaptation module, a block scheduling module, a block unit segment request module, and a buffer,

상기 미디어 서버로부터 비디오 콘텐츠에 대한 정보를 담고 있는 매니패스트 파일을 클라이언트(미디어 플레이어)로 수신하면, 상기 클라이언트의 파서에서 매니패스트 파일의 정보를 파싱 및 분석하여 미디어 세그먼트의 품질(bitrate), 길이, 바이트 범위의 정보를 인지하는 단계; When a manifest file containing information about video content is received from the media server to a client (media player), the parser of the client parses and analyzes the information of the manifest file to determine the quality (bitrate), length, and length of the media segment. Recognizing information in a byte range;

상기 대역폭 측정 모듈에 의해 Aggregated Bandwidth Estimation 단계에서 네트워크의 통합 대역폭(각 경로의 통합 대역폭)을 측정하는 단계; Measuring an aggregated bandwidth of a network (an aggregated bandwidth of each path) in an aggregated bandwidth estimation step by the bandwidth measurement module;

상기 블록 길이 적응 모듈에 의해 상기 네트워크의 통합 대역폭, 버퍼에 저장된 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도를 이용하여 다음에 요청할 블록의 길이를 결정하는 단계; Determining, by the block length adaptation module, the length of the next block to be requested using the aggregate bandwidth of the network, the amount of segments stored in the buffer, and the rate at which the segments are stored in the buffer;

상기 블록 품질 적응 모듈에 의해 상기 네트워크의 통합 대역폭, 요청할 블록의 길이, 세그먼트의 크기 정보를 이용하여 요청할 블록의 품질을 결정하는 단계; Determining, by the block quality adaptation module, a quality of a block to be requested using information on an aggregated bandwidth of the network, a length of a block to be requested, and a size of a segment;

상기 블록 스케쥴링 모듈에 의해 블록을 구성하는 다수의 세그먼트를 재정렬 문제가 발생하지 않도록 동시에 다운로드를 완료하기 위해, 네트워크의 각 경로를 통해 요청할 부분 세그먼트(Partial Segment)의 바이트 범위를 결정하는 단계; Determining a byte range of a partial segment to be requested through each path of a network in order to simultaneously complete downloading of a plurality of segments constituting a block by the block scheduling module so that a rearrangement problem does not occur;

상기 블록 단위 세그먼트 요청 모듈에 의해 Block Request 단계에서는, 블록 스케쥴링(Blcok Scheduling) 모듈에 의해 결정된 부분 세그먼트(Partial Segment) 크기를 기반으로 요청할 세그먼트의 바이트 범위를 결정하여 다수의 HTTP Range Request를 통해 각 미디어 서버로 블록 길이와 품질(bitrate)을 갖는 블록을 구성하는 다수의 Partial Segment를 요청하는 단계; 및 In the Block Request step by the block unit segment request module, each media through multiple HTTP Range Requests by determining the byte range of the segment to be requested based on the partial segment size determined by the Block Scheduling module. Requesting a plurality of Partial Segments constituting a block having a block length and a bitrate to a server; And

상기 버퍼는 세그먼트(segment)를 미디어 서버로부터 다운로드 할 때마다, 세그먼트의 재생 길이만큼 버퍼 점유량을 증가시키며, 버퍼 점유율과 버퍼 충전 속도를 산출하는 단계를 포함하고, The buffer includes the step of increasing the occupied amount of the buffer by the playing length of the segment each time a segment is downloaded from the media server, and calculating the occupied buffer occupancy rate and the buffer filling rate,

상기 클라이언트는 둘 이상의 네트워크의 다중 경로를 통해 상기 다수의 미디어 서버와 연결되며, 상기 클라이언트는 콘텐츠 특성, 재생 장치 특성, 및 네트워크 특성을 고려하여 요청할 블록의 길이와 품질(bitrate)을 결정한 후, 다중경로를 통해 블록 단위로 미디어 세그먼트를 요청하며, The client is connected to the plurality of media servers through multiple paths of two or more networks, and the client determines the length and bitrate of the block to be requested in consideration of content characteristics, playback device characteristics, and network characteristics. Requests a media segment in block units through a path,

상기 콘텐츠 특성은 세그먼트의 크기, 길이이며, 상기 재생 장치 특성은 버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도이고, 상기 네트워크 특성은 둘 이상의 네트워크의 각 경로의 대역이며, The content characteristic is the size and length of the segment, the playback device characteristic is the amount of segments stored in the buffer, the speed at which the segment is stored in the buffer, and the network characteristic is the bandwidth of each path of two or more networks,

매니패스트 파일은 세그먼트 파일명, 미디어 세그먼트의 품질(bitrate), 세그먼트의 재생시간, 세그먼트의 크기를 포함하고,The manifest file includes the segment file name, media segment bitrate, segment duration, segment size, and

상기 클라이언트는 파서에서 상기 매니패스트 파일의 정보를 파싱 및 분석하여 미디어 세그먼트의 품질, 길이, 바이트 범위의 정보를 인지하고, 대역폭 측정 모듈, 블록 길이 적응 모듈, 블록 품질 적응 모듈, 블록 스케쥴링 모듈, 블록 단위 세그먼트 요청 모듈, 버퍼 점유율과 버퍼 충전 속도를 산출하는 버퍼를 포함하며, The client parses and analyzes the information of the manifest file in a parser to recognize the quality, length, and byte range information of the media segment, and the bandwidth measurement module, block length adaptation module, block quality adaptation module, block scheduling module, and block It includes a unit segment request module, a buffer that calculates the buffer occupancy rate and the buffer charging rate,

상기 대역폭 측정 모듈이 통합 대역폭을 측정한 후, 블록 길이 적응(Block Length Adaptation) 모듈과 블록 품질 적응(Block Quality Adaptation) 모듈은 사용자 단말의 접속에 따라 변화하는 네트워크 환경에 끊김 없는 비디오 재생을 위해 콘텐츠 특성(세그먼트 크기, 길이, 재생시간), 재생 장치 특성(버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도), 그리고 네트워크 특성(각 경로의 대역폭 총합)을 고려하여 블록의 길이(N)와 블록의 품질(bitrate)을 결정하고, After the bandwidth measurement module measures the integrated bandwidth, the block length adaptation module and the block quality adaptation module provide content for seamless video playback in the network environment that changes according to the connection of the user terminal. The length (N) of the block taking into account the characteristics (segment size, length, playback time), playback device characteristics (the amount of segments stored in the buffer, the speed at which segments are stored in the buffer), and network characteristics (the total bandwidth of each path). ) And block quality (bitrate),

다중경로 기반 블록 전송 스트리밍 서비스에서 블록의 길이(N)는 스트리밍의 네트워크 변화에 대한 적응 속도와 품질 변경 빈도수에 영향을 주며, In the multipath-based block transmission streaming service, the block length (N) affects the adaptation speed and quality change frequency of the streaming network.

적응적 스트리밍 서비스를 제공하는 미디어 서버와 클라이언트를 구비하는 다중경로 기반 블록 전송 시스템은 재생 장치 특성 정보(버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도)를 이용하여 적절한 블록의 길이(N)를 결정해야 하며, 상기 다중경로 기반 블록 전송 시스템은 요청할 블록의 품질(V)과 길이(N)를 결정한 후, 다수의 HTTP Range Request를 이용하여 2N개의 Partial Segment를 각 경로를 통해 각각의 미디어 서버로 요청한다. A multipath-based block transmission system including a media server and a client that provides an adaptive streaming service uses the characteristic information of the playback device (the amount of segments stored in the buffer, the speed at which the segments are stored in the buffer), and uses the appropriate block length ( N) must be determined, and the multipath-based block transmission system determines the quality (V) and length (N) of the block to be requested, and then sends 2N partial segments through each path using multiple HTTP Range Requests. Make a request to the media server.

상기 대역폭 측정 모듈이 통합 대역폭을 측정한 후, 블록 길이 적응(Block Length Adaptation) 모듈과 블록 품질 적응(Block Quality Adaptation) 모듈은 사용자 단말의 접속에 따라 변화하는 네트워크 환경에 끊김 없는 비디오 재생을 위해 콘텐츠 특성(세그먼트의 크기, 길이, 재생시간), 재생 장치 특성(버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도), 그리고 네트워크 특성(각 경로의 대역폭 총합)을 고려하여 블록의 길이와 블록의 품질(bitrate)을 결정한다. After the bandwidth measurement module measures the integrated bandwidth, the block length adaptation module and the block quality adaptation module provide content for seamless video playback in the network environment that changes according to the connection of the user terminal. The length of the block and the length of the block considering the characteristics (segment size, length, playback time), playback device characteristics (the amount of segments stored in the buffer, the speed at which segments are stored in the buffer), and network characteristics (the total bandwidth of each path). Determine the bitrate of the block.

상기 클라이언트는 다중경로 환경에서 네트워크의 대역폭을 모두 활용하기 위해 예를들면, 네트워크1, 네트워크2의 각 경로의 대역폭(

Figure pat00003
)을 모두 더한 통합 대역폭(
Figure pat00004
)을 측정하며, 상기 클라이언트는 통합 대역폭(BW1 + BW2)을 기반으로 요청할 블록의 길이와 품질(bitrate)을 결정한 후, 블록(block)을 다수의 부분 세그먼트들로 분할하여 다수의 네트워크(NET1, NET2)의 각 경로를 통해 블록의 길이와 품질(bitrate)가 결정된 블록 단위로 미디어 세그먼트를 상기 미디어 서버로 요청함으로써, 고품질의 비디오 콘텐츠를 끊김 없이 재생하고 사용자의 체감 품질(QoE)을 향상시킨다. In order to utilize all the bandwidth of the network in a multipath environment, the client, for example, the bandwidth of each path of network 1 and network 2 (
Figure pat00003
) Plus the aggregated bandwidth (
Figure pat00004
) Is measured, and the client determines the length and bitrate of the block to be requested based on the aggregated bandwidth (BW1 + BW2), and then divides the block into a plurality of partial segments, Through each path of NET2), a media segment is requested to the media server in block units whose block length and bitrate are determined, thereby seamlessly playing high-quality video content and improving the user's quality of experience (QoE).

상기 매니패스트 파일은 세그먼트 파일명, 미디어 세그먼트의 품질(bitrate), 세그먼트의 재생시간, 세그먼트의 크기를 포함한다. The manifest file includes a segment file name, a media segment's bitrate, a segment playback time, and a segment size.

상기 방법은, 다중경로 기반 블록 전송 스트리밍 서비스에서 블록 길이(N)는 스트리밍의 네트워크 변화에 대한 적응 속도와 품질 변경 빈도수에 영향을 주며, In the above method, in a multipath-based block transmission streaming service, the block length (N) affects the adaptation speed and quality change frequency of the streaming network,

적응적 스트리밍 서비스를 제공하는 미디어 서버와 클라이언트를 구비하는 다중경로 기반 블록 전송 시스템은 재생 장치 특성 정보(버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도)를 이용하여 적절한 N을 결정해야 하며, 상기 다중경로 기반 블록 전송 시스템은 요청할 블록의 품질(V)과 길이(N)를 결정한 후, 다수의 HTTP Range Request를 이용하여 2N개의 Partial Segment를 각 경로를 통해 각각의 미디어 서버로 요청한다. A multipath-based block transmission system including a media server and a client that provides an adaptive streaming service must determine an appropriate N using the playback device characteristic information (the amount of segments stored in the buffer, and the speed at which the segments are stored in the buffer). The multipath-based block transmission system determines the quality (V) and length (N) of the block to be requested, and then requests 2N partial segments to each media server through each path using a number of HTTP Range Requests. .

도 6은 다중경로 기반 블록 전송 시스템의 동작 순서도를 보여준다. 6 is a flowchart illustrating an operation of a multipath-based block transmission system.

스트리밍을 시작하면, 적용적 스트리밍 서비스를 제공하는 미디어 서버(Media Server)로부터 미디어 세그먼트에 대한 정보를 담고 있는 매니패스트 파일(Manifest File)을 수신한다. 미디어 서버로부터 클라이언트로 수신된 매니페스트 파일을 클라이언트(미디어 플레이어)의 파서 (Parser)에서 분석하여 콘텐츠에 대한 품질(bitrate)과 세그먼트 특성(세그먼트 크기, 길이)들을 인지한다. When streaming starts, a manifest file containing information on a media segment is received from a media server that provides an applicable streaming service. The manifest file received from the media server to the client is analyzed by the parser of the client (media player) to recognize the quality (bitrate) and segment characteristics (segment size, length) of the content.

클라이언트는 인지한 콘텐츠 특성에 따라, 블록을 미디어 서버로 요청하고 이에 대한 응답으로 미디어 서버로부터 하나의 블록을 수신할 때마다, 블록의 크기와 블록을 다운로드하는데 걸리는 시간을 이용하여 네트워크의 대역폭을 측정한다. The client requests a block to the media server according to the perceived content characteristics, and measures the bandwidth of the network using the size of the block and the time it takes to download the block whenever it receives a block from the media server in response. do.

클라이언트는 측정한 대역폭이나 재생 장치 특성 정보(버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도)와 같은 상황 정보를 이용하여 다음에 요청할 블록의 길이와 품질을 결정한다. The client determines the length and quality of the block to be requested next by using context information such as the measured bandwidth or characteristic information of the playback device (the amount of segments stored in the buffer, the speed at which the segments are stored in the buffer).

클라이언트는 결정된 미디어 세그먼트의 품질(bitrate)에 따라 다음 요청할 미디어 세그먼트의 바이트 범위와 길이를 인지하고, 네트워크 특성(각 경로의 대역폭)을 고려하여 각 경로에 요청할 블록을 다수의 Partial Segment로 분할한다. The client recognizes the byte range and length of the next media segment to be requested according to the determined bitrate of the media segment, and divides the block to be requested for each path into a number of Partial Segments in consideration of network characteristics (bandwidth of each path).

블록을 다수의 Partial Segment로 분할한 후, Partial Segment의 바이트 범위를 이용하여 각 경로로 요청 메시지를 미디어 서버로 전송하며 이에 대한 응답으로 미디어 서버로부터 클라이언트로 블록 단위 미디어 세그먼트를 수신하고, 미디어의 재생이 종료될 때까지 블록의 요청과 수신을 반복하며 적응적 스트리밍 서비스를 제공받는다.After dividing a block into a number of Partial Segments, a request message is transmitted to the media server through each path using the byte range of the Partial Segment, and in response to this, it receives a block-by-block media segment from the media server to the client, and plays the media. Until the end of the block is repeatedly requested and received, adaptive streaming service is provided.

본 발명의 적응적 스트리밍 서비스를 위한 다중 경로 기반 블록 전송 시스템 및 스트리밍 방법은 적응적 스트리밍 서비스에서 다중 경로를 이용하여 미디어 세그먼트를 전송할 때 블록 단위로 세그먼트를 전송하는 시스템과 스트리밍 방법을 이용하여 사용자 체감 품질(QoE, Quality of Experience)을 향상시키게 된다. The multi-path-based block transmission system and streaming method for an adaptive streaming service of the present invention uses a system for transmitting segments in block units and a streaming method when media segments are transmitted using multiple paths in an adaptive streaming service. It will improve the quality of experience (QoE).

적응적 스트리밍 서비스에서 다중 경로 기반 블록 전송 시스템을 제공함으로써 재생 끊김 현상 없이 고품질의 미디어를 제공하고, 비디오 재생 품질의 변화 빈도수를 줄임으로써 사용자에게 높은 체감 품질(QoE)을 제공할 수 있다.By providing a multi-path based block transmission system in an adaptive streaming service, high-quality media can be provided without interruption in playback, and high quality of experience (QoE) can be provided to users by reducing the frequency of change in video playback quality.

상기 적응적 스트리밍 서비스는 적응적 스트리밍 기술이 적용된 VoD 서비스, 적응적 스트리밍 기술이 적용된 IPTV 서비스, Web 기반 적응적 스트리밍 서비스, Mobile 단말기 기반 적응적 스트리밍 서비스, 초 고품질 미디어 스트리밍 서비스에 적용 가능하다. The adaptive streaming service is applicable to VoD service to which adaptive streaming technology is applied, IPTV service to which adaptive streaming technology is applied, adaptive streaming service based on Web, adaptive streaming service based on mobile terminal, and ultra-high quality media streaming service.

본 발명에 따른 실시예들은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 기록 매체에 기록될 수 있다. 상기 컴퓨터 판독 가능 기록 매체는 프로그램 명령, 데이터 파일, 데이터 구조를 단독으로 또는 조합하여 포함할 수 있다. 컴퓨터 판독 가능 기록 매체는 스토리지, 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 저장 매체에 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함될 수 있다. 프로그램 명령의 예는 컴파일러에 의해 만들어지는 것과, 기계어 코드뿐만 아니라 인터프리터를 사용하여 컴퓨터에 의해 실행될 수 있는 고급 언어 코드를 포함할 수 있다. 상기 하드웨어 장치는 본 발명의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로써 작동하도록 구성될 수 있다.Embodiments according to the present invention may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable recording medium. The computer-readable recording medium may include program instructions, data files, and data structures alone or in combination. Computer-readable recording media include storage, magnetic media such as hard disks, floppy disks and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. -A hardware device specially configured to store and execute program instructions in a magneto-optical media, and a storage medium such as ROM, RAM, flash memory, etc. may be included. Examples of program instructions may include those produced by a compiler, and high-level language codes that can be executed by a computer using an interpreter as well as machine language codes. The hardware device may be configured to operate as one or more software modules to perform the operation of the present invention.

이상에서 설명한 바와 같이, 본 발명의 방법은 프로그램으로 구현되어 컴퓨터의 소프트웨어를 이용하여 읽을 수 있는 형태로 기록매체(CD-ROM, RAM, ROM, 메모리 카드, 하드 디스크, 광자기 디스크, 스토리지 디바이스 등)에 저장될 수 있다. As described above, the method of the present invention is implemented as a program and can be read using software of a computer, such as a recording medium (CD-ROM, RAM, ROM, memory card, hard disk, magneto-optical disk, storage device, etc.). ) Can be stored.

본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진자가 하기의 특허청구범위에 기재된 본 발명의 기술적 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 또는 변형하여 실시할 수 있음을 이해할 수 있을 것이다.Although it has been described with reference to the preferred embodiments of the present invention, various modifications or variations of the present invention within the scope not departing from the spirit and scope of the present invention described in the following claims by those of ordinary skill in the relevant technical field It will be understood that this can be done.

100: 클라이언트
201, 202: 미디어 서버
100: client
201, 202: media server

Claims (6)

다수의 네트워크 환경에서, 고품질의 영상을 끊김 없이 재생하고 사용자의 체감 품질(QoE)을 향상시키기 위해 적어도 하나 이상의 다중경로를 통해 블록의 길이와 품질(bitrate)을 결정하여 블록 단위로 미디어 세그먼트를 요청하는 클라이언트; 및
서로 다른 품질(bitrate)의 미디어 세그먼트를 저장하고, 상기 클라이언트로부터 블록 단위로 미디어 세그먼트를 요청받고, 미디어 세그먼트를 다수의 블록 단위 부분 세그먼트들로 분할하여 적응적 스트리밍 서비스를 제공하도록 블록 단위로 미디어 세그먼트를 전송하는 다수의 미디어 서버를 포함하고,
상기 클라이언트는 둘 이상의 네트워크의 다중 경로를 통해 상기 다수의 미디어 서버와 연결되며, 상기 클라이언트는 콘텐츠 특성, 재생 장치 특성, 및 네트워크 특성을 고려하여 요청할 블록의 길이와 품질(bitrate)을 결정한 후, 다중경로를 통해 블록 단위로 미디어 세그먼트를 요청하며,
상기 콘텐츠 특성은 세그먼트의 크기, 길이이며, 상기 재생 장치 특성은 버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도이고, 상기 네트워크 특성은 둘 이상의 네트워크의 각 경로의 대역이며,
매니패스트 파일은 세그먼트 파일명, 미디어 세그먼트의 품질(bitrate), 세그먼트의 재생시간, 세그먼트의 크기를 포함하고,
상기 클라이언트는 파서에서 상기 매니패스트 파일의 정보를 파싱 및 분석하여 미디어 세그먼트의 품질, 길이, 바이트 범위의 정보를 인지하고, 대역폭 측정 모듈, 블록 길이 적응 모듈, 블록 품질 적응 모듈, 블록 스케쥴링 모듈, 블록 단위 세그먼트 요청 모듈, 버퍼 점유율과 버퍼 충전 속도를 산출하는 버퍼를 포함하며,
상기 대역폭 측정 모듈이 통합 대역폭을 측정한 후, 블록 길이 적응(Block Length Adaptation) 모듈과 블록 품질 적응(Block Quality Adaptation) 모듈은 사용자 단말의 접속에 따라 변화하는 네트워크 환경에 끊김 없는 비디오 재생을 위해 콘텐츠 특성, 재생 장치 특성, 그리고 네트워크 특성을 고려하여 블록의 길이(N)와 블록의 품질(bitrate)을 결정하고,
다중경로 기반 블록 전송 스트리밍 서비스에서 블록의 길이(N)는 스트리밍의 네트워크 변화에 대한 적응 속도와 품질 변경 빈도수에 영향을 주며,
적응적 스트리밍 서비스를 제공하는 미디어 서버와 클라이언트를 구비하는 다중경로 기반 블록 전송 시스템은 재생 장치 특성 정보(버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도)를 이용하여 블록의 길이(N)를 결정해야 하며, 상기 다중경로 기반 블록 전송 시스템은 요청할 블록의 품질(V)과 길이(N)를 결정한 후, 다수의 HTTP Range Request를 이용하여 2N개의 Partial Segment를 각 경로를 통해 각각의 미디어 서버로 요청하는, 적응적 스트리밍 서비스를 위한 다중 경로 기반 블록 전송 시스템.
In multiple network environments, in order to seamlessly play high-quality video and improve the quality of experience (QoE) of users, the length and bitrate of blocks are determined through at least one multipath and a media segment is requested in units of blocks. A client to do; And
Media segments in blocks to provide adaptive streaming services by storing media segments of different qualities (bitrate), receiving a request for a media segment in block units from the client, and dividing the media segment into a plurality of block unit partial segments to provide an adaptive streaming service. Including a plurality of media servers for transmitting,
The client is connected to the plurality of media servers through multiple paths of two or more networks, and the client determines the length and bitrate of the block to be requested in consideration of content characteristics, playback device characteristics, and network characteristics. Requests a media segment in block units through a path,
The content characteristic is the size and length of the segment, the playback device characteristic is the amount of segments stored in the buffer, the speed at which the segment is stored in the buffer, and the network characteristic is the bandwidth of each path of two or more networks,
The manifest file includes the segment file name, media segment bitrate, segment duration, segment size, and
The client parses and analyzes the information of the manifest file in a parser to recognize the quality, length, and byte range information of the media segment, and the bandwidth measurement module, block length adaptation module, block quality adaptation module, block scheduling module, and block It includes a unit segment request module, a buffer that calculates the buffer occupancy rate and the buffer charging rate,
After the bandwidth measurement module measures the integrated bandwidth, the block length adaptation module and the block quality adaptation module provide content for seamless video playback in the network environment that changes according to the connection of the user terminal. Determine the block length (N) and block quality (bitrate) in consideration of characteristics, playback device characteristics, and network characteristics,
In the multipath-based block transmission streaming service, the block length (N) affects the adaptation speed and quality change frequency of the streaming network.
A multipath-based block transmission system including a media server and a client that provides an adaptive streaming service uses the playback device characteristic information (the amount of segments stored in the buffer, the speed at which the segments are stored in the buffer) to determine the length of the block (N ), and the multipath-based block transmission system determines the quality (V) and length (N) of the block to be requested, and then uses a number of HTTP Range Requests to transmit 2N Partial Segments to each media through each path. A block transmission system based on multi-path for adaptive streaming service requested by a server.
제1항에 있어서,
상기 클라이언트는
상기 미디어 서버로부터 비디오 콘텐츠에 대한 정보를 담고 있는 매니패스트 파일을 클라이언트(미디어 플레이어)로 수신하면, 상기 클라이언트의 파서에서 매니패스트 파일의 정보를 파싱 및 분석하여 미디어 세그먼트의 품질(bitrate), 길이, 바이트 범위의 정보를 인지하며,
Aggregated Bandwidth Estimation 단계에서 네트워크의 통합 대역폭(각 경로의 통합 대역폭)을 측정하는 대역폭 측정 모듈;
상기 네트워크의 통합 대역폭, 버퍼에 저장된 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도를 이용하여 다음에 요청할 블록의 길이를 결정하는 블록 길이 적응 모듈;
상기 네트워크의 통합 대역폭, 요청할 블록의 길이, 세그먼트의 크기 정보를 이용하여 요청할 블록의 품질을 결정하는 블록 품질 적응 모듈;
블록을 구성하는 다수의 세그먼트를 재정렬 문제가 발생하지 않도록 동시에 다운로드를 완료하기 위해, 네트워크의 각 경로를 통해 요청할 부분 세그먼트(Partial Segment)의 바이트 범위를 결정하는 블록 스케쥴링 모듈;
Block Request 단계에서는, 블록 스케쥴링(Blcok Scheduling) 모듈에 의해 결정된 부분 세그먼트(Partial Segment) 크기를 기반으로 요청할 세그먼트의 바이트 범위를 결정하여 다수의 HTTP Range Request를 통해 각 미디어 서버로 블록 길이와 품질(bitrate)을 갖는 블록을 구성하는 다수의 Partial Segment를 요청하는 블록 단위 세그먼트 요청 모듈; 및
세그먼트(segment)를 미디어 서버로부터 다운로드 할 때마다, 세그먼트의 재생 길이만큼 버퍼 점유량을 증가시키며, 버퍼 점유율과 버퍼 충전 속도를 산출하는 버퍼;
를 포함하는, 적응적 스트리밍 서비스를 위한 다중 경로 기반 블록 전송 시스템.
The method of claim 1,
The client
When a manifest file containing information about video content is received from the media server to a client (media player), the parser of the client parses and analyzes the information of the manifest file to determine the quality (bitrate), length, and length of the media segment. Recognizes information in a range of bytes,
A bandwidth measurement module for measuring an aggregated bandwidth of a network (an aggregated bandwidth of each path) in an aggregated bandwidth estimation step;
A block length adaptation module that determines the length of a block to be requested next using the aggregate bandwidth of the network, the amount of segments stored in the buffer, and the rate at which the segments are stored in the buffer;
A block quality adaptation module that determines a quality of a block to be requested using information on the aggregate bandwidth of the network, the length of the block to be requested, and the size of the segment;
A block scheduling module that determines a byte range of a partial segment to be requested through each path of the network in order to simultaneously download a plurality of segments constituting a block so as not to cause a rearrangement problem;
In the Block Request stage, the byte range of the segment to be requested is determined based on the partial segment size determined by the Block Scheduling module, and the block length and bitrate to each media server through multiple HTTP Range Requests. A block unit segment request module that requests a plurality of Partial Segments constituting a block having ); And
A buffer for increasing the occupied amount of the buffer by the playback length of the segment each time a segment is downloaded from the media server, and calculating a buffer occupancy rate and a buffer charging speed;
Including a multi-path based block transmission system for an adaptive streaming service.
제2항에 있어서,
상기 클라이언트는 다중경로 환경에서 네트워크의 대역폭을 모두 활용하기 위해 예를들면, 네트워크1, 네트워크2의 각 경로의 대역폭(
Figure pat00005
)을 모두 더한 통합 대역폭(
Figure pat00006
)을 측정하며, 상기 클라이언트는 통합 대역폭(BW1 + BW2)을 기반으로 요청할 블록의 길이와 품질(bitrate)을 결정한 후, 블록(block)을 다수의 부분 세그먼트들로 분할하여 다수의 네트워크(NET1, NET2)의 각 경로를 통해 블록의 길이와 품질(bitrate)이 결정된 블록 단위로 미디어 세그먼트를 상기 미디어 서버로 요청함으로써, 고품질의 비디오 콘텐츠를 끊김 없이 재생하고 사용자의 체감 품질(QoE)을 향상시키는, 적응적 스트리밍 서비스를 위한 다중 경로 기반 블록 전송 시스템.
The method of claim 2,
In order to utilize all the bandwidth of the network in a multipath environment, the client, for example, the bandwidth of each path of network 1 and network 2 (
Figure pat00005
) Plus the aggregated bandwidth (
Figure pat00006
) Is measured, and the client determines the length and bitrate of the block to be requested based on the aggregated bandwidth (BW1 + BW2), and then divides the block into a plurality of partial segments, NET2) by requesting a media segment in block units in which the block length and bitrate are determined through each path of NET2), seamlessly playing high-quality video content and improving the quality of experience (QoE) of the user, Multipath-based block transmission system for adaptive streaming service.
(a) 다수의 네트워크 환경에서, 고품질의 영상을 끊김 없이 재생하고 사용자의 체감 품질(QoE)을 향상시키기 위해 클라이언트가 네트워크의 적어도 하나 이상의 다중경로를 통해 블록의 길이와 품질(bitrate)을 결정하여 블록 단위로 미디어 세그먼트를 요청하는 단계; 및
(b) 다수의 미디어 서버는 서로 다른 품질(bitrate)의 미디어 세그먼트를 저장하고, 상기 클라이언트로부터 블록 단위로 미디어 세그먼트를 요청받고, 미디어 세그먼트를 다수의 블록 단위 부분 세그먼트들로 분할하여 적응적 스트리밍 서비스를 제공하도록 블록 단위로 미디어 세그먼트를 클라이언트로 전송하는 단계를 포함하고,
상기 클라이언트는 둘 이상의 네트워크의 다중 경로를 통해 상기 다수의 미디어 서버와 연결되며, 상기 클라이언트는 콘텐츠 특성, 재생 장치 특성, 및 네트워크 특성을 고려하여 요청할 블록의 길이와 품질(bitrate)을 결정한 후, 다중경로를 통해 블록 단위로 미디어 세그먼트를 요청하며,
상기 콘텐츠 특성은 세그먼트의 크기, 길이이며, 상기 재생 장치 특성은 버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도이고, 상기 네트워크 특성은 둘 이상의 네트워크의 각 경로의 대역이며,
매니패스트 파일은 세그먼트 파일명, 미디어 세그먼트의 품질(bitrate), 세그먼트의 재생시간, 세그먼트의 크기를 포함하고,
상기 클라이언트는 파서에서 상기 매니패스트 파일의 정보를 파싱 및 분석하여 미디어 세그먼트의 품질, 길이, 바이트 범위의 정보를 인지하고, 대역폭 측정 모듈, 블록 길이 적응 모듈, 블록 품질 적응 모듈, 블록 스케쥴링 모듈, 블록 단위 세그먼트 요청 모듈, 버퍼 점유율과 버퍼 충전 속도를 산출하는 버퍼를 포함하며,
상기 대역폭 측정 모듈이 통합 대역폭을 측정한 후, 블록 길이 적응(Block Length Adaptation) 모듈과 블록 품질 적응(Block Quality Adaptation) 모듈은 사용자 단말의 접속에 따라 변화하는 네트워크 환경에 끊김 없는 비디오 재생을 위해 콘텐츠 특성(세그먼트 크기, 길이, 재생시간), 재생 장치 특성(버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도), 그리고 네트워크 특성(각 경로의 대역폭 총합)을 고려하여 블록의 길이(N)와 블록의 품질(bitrate)을 결정하고,
다중경로 기반 블록 전송 스트리밍 서비스에서 블록의 길이(N)는 스트리밍의 네트워크 변화에 대한 적응 속도와 품질 변경 빈도수에 영향을 주며,
적응적 스트리밍 서비스를 제공하는 미디어 서버와 클라이언트를 구비하는 다중경로 기반 블록 전송 시스템은 재생 장치 특성 정보(버퍼에 저장되어 있는 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도)를 이용하여 블록의 길이(N)를 결정해야 하며, 상기 다중경로 기반 블록 전송 시스템은 요청할 블록의 품질(V)과 길이(N)를 결정한 후, 다수의 HTTP Range Request를 이용하여 2N개의 Partial Segment를 각 경로를 통해 각각의 미디어 서버로 요청하는, 적응적 스트리밍 서비스를 위한 다중 경로 기반 블록 전송 방법.
(a) In multiple network environments, in order to play high-quality video seamlessly and improve the quality of user experience (QoE), the client determines the block length and bitrate through at least one multipath of the network. Requesting a media segment in block units; And
(b) Multiple media servers store media segments of different quality (bitrate), receive a request for a media segment in block units from the client, and divide the media segment into a plurality of block unit partial segments to provide an adaptive streaming service. Transmitting the media segment to the client in block units to provide a,
The client is connected to the plurality of media servers through multiple paths of two or more networks, and the client determines the length and bitrate of the block to be requested in consideration of content characteristics, playback device characteristics, and network characteristics. Requests a media segment in block units through a path,
The content characteristic is the size and length of the segment, the playback device characteristic is the amount of segments stored in the buffer, the speed at which the segment is stored in the buffer, and the network characteristic is the bandwidth of each path of two or more networks,
The manifest file includes the segment file name, media segment bitrate, segment duration, segment size, and
The client parses and analyzes the information of the manifest file in a parser to recognize the quality, length, and byte range information of the media segment, and the bandwidth measurement module, block length adaptation module, block quality adaptation module, block scheduling module, and block It includes a unit segment request module, a buffer that calculates the buffer occupancy rate and the buffer charging rate,
After the bandwidth measurement module measures the integrated bandwidth, the block length adaptation module and the block quality adaptation module provide content for seamless video playback in the network environment that changes according to the connection of the user terminal. The length (N) of the block taking into account the characteristics (segment size, length, playback time), playback device characteristics (the amount of segments stored in the buffer, the speed at which segments are stored in the buffer), and network characteristics (the total bandwidth of each path). ) And block quality (bitrate),
In the multipath-based block transmission streaming service, the block length (N) affects the adaptation speed and quality change frequency of the streaming network.
A multipath-based block transmission system including a media server and a client that provides an adaptive streaming service uses the playback device characteristic information (the amount of segments stored in the buffer, the speed at which the segments are stored in the buffer) to determine the length of the block (N ), and the multipath-based block transmission system determines the quality (V) and length (N) of the block to be requested, and then uses a number of HTTP Range Requests to transmit 2N Partial Segments to each media through each path. A multi-path-based block transmission method for an adaptive streaming service requested by a server.
제4항에 있어서,
상기 클라이언트는 상기 미디어 서버로부터 비디오 콘텐츠에 대한 정보를 담고 있는 매니패스트 파일을 클라이언트(미디어 플레이어)로 수신하면, 상기 클라이언트의 파서에서 매니패스트 파일의 정보를 파싱 및 분석하여 미디어 세그먼트의 품질(bitrate), 길이, 바이트 범위의 정보를 인지하는 단계;
상기 대역폭 측정 모듈에 의해 Aggregated Bandwidth Estimation 단계에서 네트워크의 통합 대역폭(각 경로의 통합 대역폭)을 측정하는 단계;
상기 블록 길이 적응 모듈에 의해 상기 네트워크의 통합 대역폭, 버퍼에 저장된 세그먼트 양, 버퍼에 세그먼트가 저장되는 속도를 이용하여 다음에 요청할 블록의 길이를 결정하는 단계;
상기 블록 품질 적응 모듈에 의해 상기 네트워크의 통합 대역폭, 요청할 블록의 길이, 세그먼트의 크기 정보를 이용하여 요청할 블록의 품질을 결정하는 단계;
상기 블록 스케쥴링 모듈에 의해 블록을 구성하는 다수의 세그먼트를 재정렬 문제가 발생하지 않도록 동시에 다운로드를 완료하기 위해, 네트워크의 각 경로를 통해 요청할 부분 세그먼트(Partial Segment)의 바이트 범위를 결정하는 단계;
상기 블록 단위 세그먼트 요청 모듈에 의해 Block Request 단계에서는, 블록 스케쥴링(Blcok Scheduling) 모듈에 의해 결정된 부분 세그먼트(Partial Segment) 크기를 기반으로 요청할 세그먼트의 바이트 범위를 결정하여 다수의 HTTP Range Request를 통해 각 미디어 서버로 블록 길이와 품질(bitrate)을 갖는 블록을 구성하는 다수의 Partial Segment를 요청하는 단계; 및
상기 버퍼는 세그먼트(segment)를 미디어 서버로부터 다운로드 할 때마다, 세그먼트의 재생 길이만큼 버퍼 점유량을 증가시키며, 버퍼 점유율과 버퍼 충전 속도를 산출하는 단계;
를 포함하는, 적응적 스트리밍 서비스를 위한 다중 경로 기반 블록 전송 방법.
The method of claim 4,
When the client receives a manifest file containing information about video content from the media server to a client (media player), the parser of the client parses and analyzes the information of the manifest file to determine the quality of the media segment (bitrate). Recognizing information of a length, a range of bytes, and a byte range;
Measuring an aggregated bandwidth of a network (an aggregated bandwidth of each path) in an aggregated bandwidth estimation step by the bandwidth measurement module;
Determining, by the block length adaptation module, the length of the next block to be requested using the aggregate bandwidth of the network, the amount of segments stored in the buffer, and the rate at which the segments are stored in the buffer;
Determining, by the block quality adaptation module, a quality of a block to be requested using information on an aggregated bandwidth of the network, a length of a block to be requested, and a size of a segment;
Determining a byte range of a partial segment to be requested through each path of a network in order to simultaneously complete downloading of a plurality of segments constituting a block by the block scheduling module so that a rearrangement problem does not occur;
In the Block Request step by the block unit segment request module, each media through multiple HTTP Range Requests by determining the byte range of the segment to be requested based on the partial segment size determined by the Block Scheduling module. Requesting a plurality of Partial Segments constituting a block having a block length and a bitrate to a server; And
Each time the buffer downloads a segment from the media server, increasing the occupied amount of the buffer by the playback length of the segment, and calculating the occupied buffer occupancy rate and the buffer filling rate;
Including, multi-path-based block transmission method for an adaptive streaming service.
제5항에 있어서,
상기 클라이언트는 다중경로 환경에서 네트워크의 대역폭을 모두 활용하기 위해 예를들면, 네트워크1, 네트워크2의 각 경로의 대역폭(
Figure pat00007
)을 모두 더한 통합 대역폭(
Figure pat00008
)을 측정하며, 상기 클라이언트는 통합 대역폭(BW1 + BW2)을 기반으로 요청할 블록의 길이와 품질(bitrate)을 결정한 후, 블록(block)을 다수의 부분 세그먼트들로 분할하여 네트워크(NET1, NET2)의 각 경로를 통해 블록의 길이와 품질(bitrate)가 결정된 블록 단위로 미디어 세그먼트를 상기 미디어 서버로 요청함으로써, 고품질의 비디오 콘텐츠를 끊김 없이 재생하고 사용자의 체감 품질(QoE)을 향상시키는, 적응적 스트리밍 서비스를 위한 다중 경로 기반 블록 전송 방법.
The method of claim 5,
In order to utilize all the bandwidth of the network in a multipath environment, the client, for example, the bandwidth of each path of network 1 and network 2 (
Figure pat00007
) Plus the aggregated bandwidth (
Figure pat00008
) Is measured, and the client determines the length and bitrate of the block to be requested based on the aggregated bandwidth (BW1 + BW2), and then divides the block into a plurality of partial segments, and the network (NET1, NET2) By requesting a media segment in block units for which the block length and bitrate are determined through each path, high-quality video content is seamlessly played and the user's quality of experience (QoE) is improved. Multipath-based block transmission method for streaming service.
KR1020210009834A 2019-10-08 2021-01-25 Multipath-based block transmission system and streaming method for adaptive streaming service KR102304476B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210009834A KR102304476B1 (en) 2019-10-08 2021-01-25 Multipath-based block transmission system and streaming method for adaptive streaming service

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020190124929 2019-10-08
KR1020210009834A KR102304476B1 (en) 2019-10-08 2021-01-25 Multipath-based block transmission system and streaming method for adaptive streaming service

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
KR1020190124929 Division 2019-10-08 2019-10-08

Publications (2)

Publication Number Publication Date
KR20210042051A true KR20210042051A (en) 2021-04-16
KR102304476B1 KR102304476B1 (en) 2021-09-17

Family

ID=75743729

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210009834A KR102304476B1 (en) 2019-10-08 2021-01-25 Multipath-based block transmission system and streaming method for adaptive streaming service

Country Status (1)

Country Link
KR (1) KR102304476B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113973217A (en) * 2021-11-02 2022-01-25 秒影工场(北京)科技有限公司 Method and device for transmitting image data to cloud
CN116112712A (en) * 2023-01-12 2023-05-12 联通沃音乐文化有限公司 Self-adaptive video-audio video transmission playing method

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150025484A (en) * 2013-08-29 2015-03-10 삼성전자주식회사 The method and apparatus for receiving data using a plurality of network interfaces
KR20190048186A (en) * 2017-10-30 2019-05-09 광운대학교 산학협력단 Multipath-based split transmission system and streaming method for adaptive streaming service
KR101982290B1 (en) 2018-02-27 2019-05-24 광운대학교 산학협력단 Streaming system and method based on contents characteristic for improving perceived quality of adaptive streaming service

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20150025484A (en) * 2013-08-29 2015-03-10 삼성전자주식회사 The method and apparatus for receiving data using a plurality of network interfaces
KR20190048186A (en) * 2017-10-30 2019-05-09 광운대학교 산학협력단 Multipath-based split transmission system and streaming method for adaptive streaming service
KR101982290B1 (en) 2018-02-27 2019-05-24 광운대학교 산학협력단 Streaming system and method based on contents characteristic for improving perceived quality of adaptive streaming service

Non-Patent Citations (4)

* Cited by examiner, † Cited by third party
Title
J. He, Z. Xue,D. Wu,D. O. Wu,and Y. Wen, "CBM: Online strategieon cost-aware buffer management for mobile video streaming," IEEE Trans. Multimedia, vol. 16, no. 1, pp. 242-252, Jan. 2014.
L. D. Cicco, S. Mascolo, and V. Palmisano, "Feedback control foadaptive live video streaming," in Proc. ACM MMSys, Feb. 2011, pp.145-156.
S. Akhshabi, A. C. Begen, and C. Dovrolis, "An experimental evaluation of rate-adaptation algorithms in adaptive streaming over HTTP," in Proc. ACM MMSys, Feb. 2011, pp. 157-168.
Y. Xu,E. Altman, R. El-Azouzi, M. Haddad, S. Elayoubi, and T. Jimenez, "Analysis of bufferstarvation with application to objective Qooptimization of streaming services," IEEE Trans. Multimedia, vol. 16, no.3, pp. 813-827, Apr. 2014.

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113973217A (en) * 2021-11-02 2022-01-25 秒影工场(北京)科技有限公司 Method and device for transmitting image data to cloud
CN113973217B (en) * 2021-11-02 2023-09-22 秒影工场(北京)科技有限公司 Method and device for transmitting image data to cloud
CN116112712A (en) * 2023-01-12 2023-05-12 联通沃音乐文化有限公司 Self-adaptive video-audio video transmission playing method
CN116112712B (en) * 2023-01-12 2023-09-26 联通沃音乐文化有限公司 Self-adaptive video-audio video transmission playing method

Also Published As

Publication number Publication date
KR102304476B1 (en) 2021-09-17

Similar Documents

Publication Publication Date Title
US11076187B2 (en) Systems and methods for performing quality based streaming
JP7275033B2 (en) Systems and methods for adaptive switching between multiple content delivery networks during adaptive bitrate streaming
US10298985B2 (en) Systems and methods for performing quality based streaming
US10320869B2 (en) Network-capacity optimized adaptive HTTP streaming
Juluri et al. SARA: Segment aware rate adaptation algorithm for dynamic adaptive streaming over HTTP
EP3022884B1 (en) Quality optimization with buffer and horizon constraints in adaptive streaming
US10034048B2 (en) Multipath delivery for adaptive streaming
EP2880548B1 (en) Methods for quality-aware adaptive streaming over hypertext transfer protocol
EP2870776B1 (en) Methods and devices for bandwidth allocation in adaptive bitrate streaming
JP6308718B2 (en) System and method for adaptive streaming in a multipath environment
KR102472155B1 (en) How to Broadcast Streaming Content in a Peer to Peer (P2P) Network
KR101982290B1 (en) Streaming system and method based on contents characteristic for improving perceived quality of adaptive streaming service
EP2360923A1 (en) Method for selectively requesting adaptive streaming content and a device implementing the method
CN112511871B (en) Packer for flow of sectionalizer
KR102304476B1 (en) Multipath-based block transmission system and streaming method for adaptive streaming service
KR101718127B1 (en) Content packaging system and streaming method for context aware streaming service
KR20220059425A (en) Session based adaptive playback profile decision for video streaming
Baik et al. VSync: Cloud based video streaming service for mobile devices
Kesavan et al. Rate adaptation performance and quality analysis of adaptive HTTP streaming methods
EP3354033B1 (en) Dynamic seeking in video delivery systems
KR20190048186A (en) Multipath-based split transmission system and streaming method for adaptive streaming service
US11902599B2 (en) Multiple protocol prediction and in-session adaptation in video streaming
Ameur TCP protocol optimization for HTTP adaptive streaming
US20240137585A1 (en) Multiple protocol prediction and in-session adaptation in video streaming
Shuai Dynamic adaptive video streaming with minimal buffer sizes

Legal Events

Date Code Title Description
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant