KR102385447B1 - 스트리밍 서비스 제공 방법 및 장치 - Google Patents

스트리밍 서비스 제공 방법 및 장치 Download PDF

Info

Publication number
KR102385447B1
KR102385447B1 KR1020170144610A KR20170144610A KR102385447B1 KR 102385447 B1 KR102385447 B1 KR 102385447B1 KR 1020170144610 A KR1020170144610 A KR 1020170144610A KR 20170144610 A KR20170144610 A KR 20170144610A KR 102385447 B1 KR102385447 B1 KR 102385447B1
Authority
KR
South Korea
Prior art keywords
maximum resolution
streaming service
priority rate
throughput
local network
Prior art date
Application number
KR1020170144610A
Other languages
English (en)
Other versions
KR20190049111A (ko
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 KR1020170144610A priority Critical patent/KR102385447B1/ko
Publication of KR20190049111A publication Critical patent/KR20190049111A/ko
Application granted granted Critical
Publication of KR102385447B1 publication Critical patent/KR102385447B1/ko

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/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/43615Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/24Traffic characterised by specific attributes, e.g. priority or QoS
    • H04L47/2491Mapping quality of service [QoS] requirements between different networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/80Actions related to the user profile or the type of traffic
    • H04L47/805QOS or priority aware
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/4363Adapting the video or multiplex stream to a specific local network, e.g. a IEEE 1394 or Bluetooth® network

Abstract

로컬 네트워크에 연결된 복수의 기기에 스트리밍 서비스를 제공하는 방법 및 장치를 개시한다. 상기 방법은, 상기 복수의 기기에 대한 최대 해상도 및 하드웨어 성능 중 적어도 하나를 포함하는 정보를 수신하는 과정과, 상기 수신한 정보를 기반으로 상기 복수의 기기들의 자원 분배를 위한 우선순위 레이트들을 결정하는 과정과, 상기 결정된 각 우선순위 레이트에 따라 상기 복수의 기기에 자원을 할당하는 과정과, 상기 할당된 자원을 이용하여 상기 복수의 기기에 스트리밍 서비스를 제공하는 과정을 포함할 수 있다.

Description

스트리밍 서비스 제공 방법 및 장치{METHOD AND APPARATUS FOR PROVIDING STREAMING SERVICES}
본 개시는 로컬 네트워크를 이용하는 복수의 사용자에게 스트리밍 서비스를 제공하는 방법 및 장치에 관한 것이다.
무선 네트워크 기술의 발전과 함께, 멀티미디어 파일의 전송과 동시에 재생하는 스트리밍 서비스 시장도 급속도로 성장하고 있다. 스트리밍 서비스는 멀티미디어 파일을 재생하기 위해 다운로드 받기 위한 별도의 하드웨어 저장 공간이 필요없고, 다운로드를 위해 대기하지 않고 바로 서버로부터 멀티미디어 파일을 불러와 시청할 수 있다는 점에서 수요가 증가하고 있으며, 이러한 스트리밍 방식을 활용한 서비스도 점차 다양화 되고 있다.
무선 네트워크는 불안정한 채널 특성으로 인해 전송 지연과 데이터 손실을 발생시킬 수 있는데, 이로 인해 비디오 스트리밍 전송 시 재생이 끊기거나 화질 열화가 발생하는 등 스트리밍 서비스의 품질 저하를 야기하기도 한다. 멀티미디어 스트리밍 서비스의 품질을 향상시키기 위해 전송률 또는 비디오 품질을 조절하는 연구들이 활발히 진행되었으나, 기존 연구들은 무선 채널 상태에 대한 정확한 고려가 부족하고, 빈번한 비디오 품질 변화로 인해 사용자 체감 품질을 보장하지 못하는 문제점이 있다. 또한, 네트워크 자원이 한정된 공간에서 다수의 사용자들이 동시에 스트리밍 서비스를 요청하는 경우, 과도한 트래픽 발생으로 인해 사용자들이 제공받는 서비스 품질의 불균형이 심화되는 경향이 있다.
본 발명은 복수의 기기에 스트리밍 서비스를 제공함에 있어, 복수의 기기에 대한 서비스 품질(Quality of Service; QoS)을 관리하기 위한 방법 및 장치를 제공한다.
본 발명은 동일한 로컬 네트워크에 복수의 기기가 접속하여 동시에 스트리밍 서비스를 제공받는 상황에서 복수의 기기에게 각 기기의 해상도 크기를 기반으로 네트워크 자원을 분배하기 위한 방법 및 장치를 제공한다.
본 발명은 동일한 로컬 네트워크에 복수의 기기가 접속하여 동시에 스트리밍 서비스를 제공받는 상황에서 해당 네트워크의 상태 열화 시 복수의 사용자에게 제공되는 스트리밍 서비스의 품질을 유지하도록 네트워크 자원을 분배하기 위한 방법 및 장치를 제공한다.
본 개시의 일 실시예에 따른 방법은: 로컬 네트워크에 연결된 복수의 기기들에 스트리밍 서비스를 제공하는 방법에 있어서,상기 복수의 기기들에 대한 최대 해상도 정보를 획득하는 과정과, 상기 획득한 최대 해상도 정보를 기반으로, 상기 복수의 기기들 중 제 1 기기에 대한 제 1 최대 해상도와 상기 복수의 기기들 중 제 2 기기에 대한 제 2 최대 해상도를 비교하는 과정과, 상기 제 1 최대 해상도와 상기 제 2 최대 해상도가 동일하지 않으면, 상기 제 1 최대 해상도를 지원하기 위해 필요한 제 1 비트레이트와 상기 제 2 최대 해상도를 지원하기 위해 필요한 제 2 비트레이트를 확인하는 과정과, 상기 제 1 비트레이트에 기반하여 상기 로컬 네트워크의 자원에서 상기 제 1 기기가 이용할 자원의 비율을 나타내는 제 1 우선순위 레이트와, 상기 로컬 네트워크의 자원에서 상기 제 2 기기가 이용할 자원의 비율을 나타내는 제 2 우선순위 레이트를 결정하는 과정과, 상기 제 1 우선순위 레이트와 상기 제 2 우선순위 레이트를 기반으로 상기 제 1 기기와 상기 제 2 기기에 자원을 할당하는 과정과, 상기 할당된 자원을 이용하여 상기 제 1 기기와 상기 제 2 기기에 스트리밍 서비스를 제공하는 과정을 포함한다.
본 개시의 일 실시예에 따른 장치는: 스트리밍 서비스 제공 장치에 있어서, 수신부와, 상기 수신부를 제어하는 처리부를 포함하며, 상기 처리부는, 상기 수신부를 통해 로컬 네트워크에 연결된 복수의 기기들에 대한 최대 해상도 정보를 획득하고, 상기 획득한 최대 해상도 정보를 기반으로, 상기 복수의 기기들 중 제 1 기기에 대한 제 1 최대 해상도와 상기 복수의 기기들 중 제 2 기기에 대한 제 2 최대 해상도를 비교하고, 상기 제 1 최대 해상도와 상기 제 2 최대 해상도가 동일하지 않으면, 상기 제 1 최대 해상도를 지원하기 위해 필요한 제 1 비트레이트와 상기 제 2 최대 해상도를 지원하기 위해 필요한 제 2 비트레이트를 확인하고, 상기 제 1 비트레이트에 기반하여 상기 로컬 네트워크의 자원에서 상기 제 1 기기가 이용할 자원의 비율을 나타내는 제 1 우선순위 레이트와, 상기 로컬 네트워크의 자원에서 상기 제 2 기기가 이용할 자원의 비율을 나타내는 제 2 우선순위 레이트를 결정하고, 상기 제 1 우선순위 레이트와 상기 제 2 우선순위 레이트를 기반으로 상기 제 1 기기와 상기 제 2 기기에 자원을 할당하며, 상기 할당된 자원을 이용하여 상기 제 1 기기와 상기 제 2 기기에 스트리밍 서비스를 제공함을 특징으로 한다.
본 발명의 특정한 바람직한 실시예들의 상기에서 설명한 바와 같은 또한 다른 측면들과, 특징들 및 이득들은 첨부 도면들과 함께 처리되는 하기의 설명으로부터 보다 명백하게 될 것이다.
도 1은 로컬 네트워크에서의 스트리밍 서비스의 제공을 설명하기 위한 도면이다.
도 2a는 본 발명의 일 실시예에 따른 스트리밍 서비스 제공 장치를 도시한 블록도이고, 도 2b는 본 발명의 일실시예에 따른 스트리밍 서비스 제공 장치의 처리부에 대한 세부구성을 도시한 블록도이다.
도 3은 본 발명의 일 실시예에 따른 스트리밍 서비스 절차를 도시한 것이다.
도 4는 본 발명의 일 실시예에 따른 스트리밍 서비스 제공 방법을 도시한 흐름도이다.
도 5는 본 발명의 일 실시예에 따른 스트리밍 서비스 제공 시 우선순위 레이트 결정 과정을 도시한 흐름도이다.
상기 도면들을 통해, 유사 참조 번호들은 동일한 혹은 유사한 엘리먼트들과, 특징들 및 구조들을 도시하기 위해 사용된다는 것에 유의해야만 한다.
이하, 본 발명의 실시예를 첨부된 도면을 참조하여 상세하게 설명한다.
실시예를 설명함에 있어서 본 발명이 속하는 기술 분야에 익히 알려져 있고 본 발명과 직접적으로 관련이 없는 기술 내용에 대해서는 설명을 생략한다. 이는 불필요한 설명을 생략함으로써 본 발명의 요지를 흐리지 않고 더욱 명확히 전달하기 위함이다.
마찬가지 이유로 첨부 도면에 있어서 일부 구성요소는 과장되거나 생략되거나 개략적으로 도시되었다. 또한, 각 구성요소의 크기는 실제 크기를 전적으로 반영하는 것이 아니다. 각 도면에서 동일한 또는 대응하는 구성요소에는 동일한 참조 번호를 부여하였다.
본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 개시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 개시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
이때, 처리 흐름도 도면들의 각 블록과 흐름도 도면들의 조합들은 컴퓨터 프로그램 인스트럭션들에 의해 수행될 수 있음을 이해할 수 있을 것이다. 이들 컴퓨터 프로그램 인스트럭션들은 범용 컴퓨터, 특수용 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서에 탑재될 수 있으므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비의 프로세서를 통해 수행되는 그 인스트럭션들이 흐름도 블록(들)에서 설명된 기능들을 수행하는 수단을 생성하게 된다. 이들 컴퓨터 프로그램 인스트럭션들은 특정 방식으로 기능을 구현하기 위해 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 지향할 수 있는 컴퓨터 이용 가능 또는 컴퓨터 판독 가능 메모리에 저장되는 것도 가능하므로, 그 컴퓨터 이용가능 또는 컴퓨터 판독 가능 메모리에 저장된 인스트럭션들은 흐름도 블록(들)에서 설명된 기능을 수행하는 인스트럭션 수단을 내포하는 제조 품목을 생산하는 것도 가능하다. 컴퓨터 프로그램 인스트럭션들은 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에 탑재되는 것도 가능하므로, 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비 상에서 일련의 동작 단계들이 수행되어 컴퓨터로 실행되는 프로세스를 생성해서 컴퓨터 또는 기타 프로그램 가능한 데이터 프로세싱 장비를 수행하는 인스트럭션들은 흐름도 블록(들)에서 설명된 기능들을 실행하기 위한 단계들을 제공하는 것도 가능하다.
또한, 각 블록은 특정된 논리적 기능(들)을 실행하기 위한 하나 이상의 실행 가능한 인스트럭션들을 포함하는 모듈, 세그먼트 또는 코드의 일부를 나타낼 수 있다. 또, 몇 가지 대체 실행 예들에서는 블록들에서 언급된 기능들이 순서를 벗어나서 발생하는 것도 가능함을 주목해야 한다. 예컨대, 잇달아 도시되어 있는 두 개의 블록들은 사실 실질적으로 동시에 수행되는 것도 가능하고 또는 그 블록들이 때때로 해당하는 기능에 따라 역순으로 수행되는 것도 가능하다.
이 때, 본 실시 예에서 사용되는 '~부'라는 용어는 소프트웨어 또는 FPGA(field-Programmable Gate Array) 또는 ASIC(Application Specific Integrated Circuit)과 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터, 데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. 구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다. 뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다.
본 개시의 실시예들을 구체적으로 설명함에 있어서, 특정 시스템의 예를 주된 대상으로 할 것이지만, 본 명세서에서 청구하고자 하는 주요한 요지는 유사한 기술적 배경을 가지는 여타의 통신 시스템 및 서비스에도 본 명세서에 개시된 범위를 크게 벗어나지 아니하는 범위에서 적용 가능하며, 이는 당해 기술분야에서 숙련된 기술적 지식을 가진 자의 판단으로 가능할 것이다.
후술되는 본 발명의 실시예들은 동일한 로컬 네트워크에서 복수의 기기에게 동시에 스트리밍 서비스를 제공함에 있어, 각 기기 별 최대 해상도 크기를 고려하여 네트워크 자원을 분배하는 기술을 제안한다. 서비스 제공을 위한 자원이 한정된 로컬 네트워크 환경에서 동시에 스트리밍 서비스를 진행하는 복수의 기기에 대한 네트워크 자원 스케줄링을 통해 사용자 체감 품질이 개선되고, 각 기기 별 스트리밍 서비스의 품질이 균형적으로 보장될 수 있다. 또한, 적절한 네트워크 자원 분배로 인해 어느 한 측으로부터의 다량의 요청이 제한되므로, 스트리밍 서비스에 의한 과도한 트래픽 발생을 방지하고, 로컬 네트워크에서의 QoS 운용 성능이 향상될 수 있다.
도 1은 로컬 네트워크에서의 스트리밍 서비스의 제공을 설명하는 도면이다.
도 1을 참조하면, 가정이나 회사, 영업 공간과 같은 로컬 영역 내에 복수의 사용자 기기가 존재하는 경우, 동일한 로컬 네트워크(110)를 통해 스트리밍 서비스 서버(100)로부터 서비스를 제공받을 수 있다. 스트리밍 서비스 시스템(100)은 멀티미디어 컨텐츠를 제공하는 서비스 제공자로서, 하나 혹은 그 이상의 스트리밍 서버 및/또는 웹 서버를 포함한다. 로컬 네트워크(110)를 통해 서비스 제공자의 시스템에 연결하고 사용자 기기들이 로컬 영역 내에서 서비스를 이용할 수 있도록, 로컬 영역에는 고객 댁내 장치 또는 고객 자급 장치(Customer-premise equipment or Customer-provided equipment, 이하 CPE)가 설치된다. CPE(120)는 인터넷 접근 게이트웨이 레벨의 장비로서, 로컬 네트워크(110)를 통해 로컬 영역 내의 사용자 기기들에게 스트리밍 서비스 서버(100)와의 연결을 제공하며, 라우터, 스위치, 주거용 게이트웨이(residential gateway), 셋탑박스, 유무선 통합(fixed mobile convergence) 제품, 홈 네트워킹 어댑터 등을 포함할 수도 있다.
로컬 영역에 속해있는 복수의 사용자 기기(131, 132, 133, 134)가 스트리밍 서비스 시스템(100)으로부터 동시에 멀티미디어 스트리밍 서비스를 제공받고자 하는 경우, 로컬 네트워크(110)에서 이용 가능한 자원은 한정되어 있어 네트워크 속도 감소로 인한 버퍼링 발생이나 화질 감소와 같이 스트리밍 서비스의 품질이 저하될 수 밖에 없다.
일반적으로, 로컬 네트워크에서는 스트리밍 서비스 제공 시 단일 기기에 대한 컨텍스트 정보(이를 테면, 기기의 신호 세기, 하드웨어 성능, 화면 크기 등)만을 고려하여 네트워크 자원 분배가 이루어지고, 이후 해당 로컬 네트워크에서 스트리밍 서비스를 요청하는 사용자 기기들에 대해서는 순차적으로 네트워크 자원을 할당하거나 네트워크에 접속중인 기기들의 신호 세기에 따라 스트리밍 서비스의 품질을 조절한다. 이로 인해, 로컬 영역 내 어느 하나의 기기에서 다량의 트래픽이 발생하면 후순위로 밀린 다른 기기들의 사용자에 대한 서비스 품질은 저하될 수 밖에 없고, 기기 간 신호 세기의 차이가 근소하더라도 상대적으로 낮은 신호 세기의 기기는 후순위가 되어 서비스 품질 손실을 겪게 된다. 또한, 하드웨어 성능에 따라 네트워크 자원을 우선적으로 할당받은 기기가 다른 기기들에 비해 떨어지는 화면 성능을 가지는 경우, 해당 기기에서 요구하는 서비스 품질에 비해 과도하게 네트워크 자원을 할당받을 수 있어, 네트워크 자원이 낭비될 수 있다.
도 2a는 본 발명의 일 실시예에 따른 스트리밍 서비스 제공 장치를 도시한 블록도이고, 도 2b는 본 발명의 일실시예에 따른 스트리밍 서비스 제공 장치의 처리부에 대한 세부구성을 도시한 블록도이다.
도 2a를 참조하면, 스트리밍 서비스 제공 장치(200)는 로컬 네트워크를 통해 복수의 사용자에게 스트리밍 서비스를 제공하는 수단으로, 수신부(210) 및 처리부(220)를 포함할 수 있다. 일 실시예로서, 스트리밍 서비스 제공 장치(200)는 도 1에 도시된 CPE(120)과 동일하거나, CPE(120) 내에 구비되거나, 혹은 CPE(120)과는 별도의 네트워크 장치로 구현될 수 있다.
수신부(210)는 로컬 네트워크에 연결되어 동시에 스트리밍 서비스를 이용하는 복수의 기기에 대한 최대 해상도 및 하드웨어 성능 중 적어도 하나를 포함하는 성능 정보를 수신한다. 상기 성능 정보는 상기 로컬 네트워크에 새로운 기기가 연결되면 상기 새로운 기기로부터 자동으로 수신되거나, 스트리밍 서비스 제공 장치(200)의 요청에 의해 수신될 수 있다. 상기 성능 정보의 수신은 상기 로컬 네트워크에 연결된 기기들 중 일정 시간 내에 스트리밍 서비스를 요청한 기기들에 대해서만 수행될 수도 있다.
처리부(220)는 상기 수신한 성능 정보를 기반으로 상기 복수의 기기들에 자원 분배를 위한 우선순위 레이트들을 결정하고, 상기 결정된 각 우선순위 레이트에 따라 할당되는 자원을 이용하여 상기 복수의 기기에 스트리밍 서비스를 제공한다. 상기 우선순위 레이트는 해당 기기가 상기 로컬 네트워크의 자원을 우선적으로 사용할 수 있는 비율을 의미한다. 일부 실시예에서는, 상기 처리부(220)는 상기 수신한 성능 정보를 기반으로 상기 복수의 기기를 최대 해상도 크기에 따라 분류하고, 분류된 기기 그룹들의 상기 우선순위 레이트들을 결정할 수도 있다. 상기 처리부(220)의 세부 기능은 도 2b와 같이 나타낼 수 있으며, 분석부(221), 제1 비교부(222), 제2 비교부(223) 및 판단부(224)를 포함한다.
분석부(221)는 상기 수신한 성능 정보를 이용하여 상기 복수의 기기에 대한 최대 해상도를 비교 및 분석한다. 상기 수신한 성능 정보의 분석 결과, 상기 복수의 기기 중 최대 해상도 크기가 동일하지 않은 기기들에 대해서는 최대 해상도 크기에 따라 우선순위 레이트가 결정되지만, 최대 해상도의 크기가 동일한 기기들에 대해서는 하드웨어 성능을 고려하여 우선순위 레이트가 결정된다. 이를 위해, 상기 분석부(221)는 상기 복수의 기기로부터 수신한 성능 정보를 기반으로 상기 복수의 기기 중 적어도 두 개의 기기에 대한 최대 해상도 크기가 동일한지의 여부를 판단하여, 최대 해상도의 크기가 동일하지 않은 기기들에 대한 분석 결과는 제1 비교부(222)로 전달하고, 최대 해상도의 크기가 동일한 기기들에 대한 분석 결과는 제2 비교부(223)로 전달한다.
제1 비교부(222)는 상기 복수의 기기 중 최대 해상도 크기가 동일하지 않은 적어도 두 개의 기기에 대한 최대 해상도 크기를 비교하고, 상기 적어도 두 개의 기기 각각의 최대 해상도 크기에 따른 비트 레이트를 분석한다. 이를 테면, 최대 해상도 크기가 2160p (pixel)인 기기는 35-45Mbps (평균적으로 40Mbps)를 필요로 하고, 최대 해상도 크기가 1440p인 기기는 10Mbps를 필요로 하며, 최대 해상도 크기가 1080p인 기기는 8Mbps를 필요로 하는 것으로 분석 가능하다. 상기 비트 레이트 분석 결과는 상기 적어도 두 개의 기기에 대한 우선순위 레이트들을 결정하기 위해 판단부(224)로 전달된다.
제2 비교부(223)는 상기 복수의 기기 중 최대 해상도 크기가 동일한 적어도 두 개의 기기에 대한 하드웨어 성능을 비교한다. 일 예로서, 상기 하드웨어 성능은 각 기기의 CPU나 RAM 성능을 기반으로 판단될 수 있다. 상기 하드웨어 성능 비교 결과는 상기 적어도 두 개의 기기에 대한 우선순위 레이트들을 결정하기 위해 판단부(224)로 전달된다.
그리고, 판단부(224)는 상기 복수의 기기에 대한 우선순위 레이트들을 결정한다. 상기 복수의 기기 중 최대 해상도 크기가 동일하지 않은 적어도 두 개의 기기들의 경우, 상기 제1 비교부(222)로부터 전달받은 비트 레이트 분석 결과를 기반으로 우선순위 레이트가 결정된다. 반면에, 상기 복수의 기기 중 최대 해상도 크기가 동일한 적어도 두 개의 기기들의 경우, 상기 제2 비교부(223)로부터 전달받은 하드웨어 성능 비교 결과를 기반으로 우선순위 레이트가 결정된다. 상기 복수의 기기 중 적어도 두 개의 기기의 최대 해상도 크기 및 하드웨어 성능이 모두 동일한 경우에는, 상기 적어도 두 개의 기기에 대해 동일한 우선순위 레이트로 결정된다.
상기 판단부(224)는 상기 결정된 우선순위에 따라 상기 복수의 기기에 자원을 할당하며, 상기 자원 할당 결과에 따라 상기 복수의 기기 각각의 스루풋(throughput) 및 큐(queue) 크기가 제한된다. 여기서, 스루풋(throughput)은 단위 시간동안 전송할 수 있는 데이터 양을 의미하며, 상기 판단부(224)는 상기 로컬 네트워크의 전체 스루풋을 상기 복수의 기기 별로 결정된 우선순위 레이트에 기반하여 분배할 수 있다.
상기 판단부(224)는 상기 로컬 네트워크의 상태를 주기적으로 체크하여, 상기 로컬 네트워크의 전체 스루풋이 상기 복수의 기기에 현재 설정된 해상도 크기(예를 들어, 최대 해상도 크기)로 스트리밍 서비스를 제공하기에 충분한지를 판단한다. 상기 판단 결과 충분하지 않으면, 상기 판단부(224)는 상기 결정된 우선순위 레이트를 기반으로 상기 복수의 기기 별 스루풋 및 큐 크기를 조정(즉, 스케줄링)한다. 이 때, 상기 판단부(224)는 상기 복수의 기기 중 최대 해상도가 상대적으로 낮은 제1 기기와 최대 해상도가 상대적으로 높은 제2 기기에 대해 교대로 스루풋을 제한할 수 있다.
또한, 상기 판단 결과 충분하면, 상기 판단부(224)는 상기 복수의 기기에 대해 결정된 각 우선순위 레이트를 기반으로 상기 전체 스루풋을 분배하고, 상기 로컬 네트워크의 채널 상태 및/또는 자원 상태에 대한 주기적 모니터링을 지속적으로 수행한다. 이후, 상기 모니터링 결과 상기 로컬 네트워크의 채널 상태 및/또는 자원 상태가 열화된 것으로 판단되면, 상기 결정된 우선순위 레이트를 기반으로 상기 복수의 기기에 대한 스루풋 및 큐 크기의 재조정이 수행될 수 있다. 일 예로, 판단부(224)는 상기 로컬 네트워크의 채널 품질이 미리 정해지는 임계값 미만이 되거나, 및/또는 상기 로컬 네트워크의 가용한 자원 양이 미리 정해지는 임계값 미만이 되면, 상기 로컬 네트워크의 상태가 열화된 것으로 판단할 수 있다.
상기 스트리밍 서비스 제공 장치(200)는 로컬 네트워크 내에서 스트리밍 서비스를 제공받고자 하는 복수의 기기들에 대한 최대 해상도 크기와 하드웨어 성능 분석을 통해 각 기기 별로 사용 가능한 자원 비율을 결정하고 이를 기반으로 자원을 할당함으로써, 네트워크 자원이 한정된 상황에서도 복수의 기기들에 대해 균형적으로 서비스 품질을 보장하고 안정적으로 스트리밍 서비스를 제공할 수 있다.
도 3은 본 발명의 일 실시예에 따른 스트리밍 서비스 절차를 도시한 것이다.
도 3에서, 과정 310에서 CPE(120)는 로컬 네트워크에 연결된 복수의 사용자 기기(131, 132)로부터 기기 성능에 관한 정보를 수신한다. 상기 기기 성능에 관한 정보는 해당 로컬 네트워크에서 스트리밍 서비스를 동시에 제공받기 위해 요구되는 네트워크 자원 할당 기준이 되는 정보로서, 각 기기에서 제공 가능한 최대 해상도 크기 및 각 기기 별 하드웨어 성능 중 적어도 하나를 포함할 수 있다. 상기 CPE(120)는 상기 로컬 네트워크에 새로운 사용자 기기가 연결될 때마다 자동으로 상기 기기 성능에 관한 정보를 수신하거나, 새로운 사용자 기기에 상기 기기 성능에 관한 정보를 요청하여 수신할 수 있으며, 일부 실시예에서는 복수의 사용자 기기 중 일정 시간 내에 스트리밍 서비스를 요청한 사용자 기기들로부터 자동으로 또는 요청에 의해 상기 기기 성능에 관한 정보를 수신한다.
과정 320에서, 상기 CPE(120)는 상기 수신한 기기 성능에 관한 정보를 분석한다. 이를 테면, 상기 복수의 사용자 기기에 대해 제공 가능한 최대 해상도 크기를 기준으로 네트워크 자원을 할당하기 위해, 상기 CPE(120)는 상기 기기 성능에 관한 정보를 기반으로 각 기기 별 최대 해상도 크기를 분석할 수 있다. 상기 복수의 사용자 기기 중 적어도 두 개의 기기에 대한 최대 해상도 크기가 동일한 경우, 상기 CPE(120)는 각 기기 별 CPU나 RAM과 같은 하드웨어 성능을 추가 분석한다.
과정 330에서, 상기 CPE(120)는 상기 분석 결과를 기반으로 상기 복수의 사용자 기기들로의 자원 분배를 위한 복수의 우선순위 레이트들을 결정한다. 상기 우선순위 레이트는 해당 사용자 기기가 상기 로컬 네트워크의 자원을 우선적으로 사용할 수 있는 비율을 의미하며, 각 기기 별로 결정된 우선순위 레이트에 따라 해당 기기의 스루풋 및 큐 크기가 결정된다.
상기 CPE(120)는, 과정 340에서 상기 우선순위 레이트에 기반하여 상기 복수의 기기 각각에 대한 스루풋을 결정하고, 상기 우선순위 레이트에 따라 상기 복수의 기기 각각에 대한 큐 스케줄링을 수행하여 큐 크기를 결정한다.
과정 350에서, 상기 CPE(120)는 상기 결정된 스루풋 및 큐 크기를 토대로, 상기 복수의 기기에 스트리밍 서비스 제공을 위한 자원을 할당한다.
도 4는 본 발명의 일 실시예에 따른 스트리밍 서비스 제공 방법을 도시한 흐름도이다.
도 4를 참조하면, 과정 410에서는 스트리밍 서비스 제공 장치의 수신부가 로컬 네트워크에 연결된 복수의 기기로부터 최대 해상도 및 하드웨어 성능 중 적어도 하나를 포함하는 정보를 수신한다. 상기 정보의 수신은 상기 로컬 네트워크에 연결된 기기들 중 일정 시간 내에 스트리밍 서비스를 요청한 기기들에 대해서만 자동으로 또는 별도의 정보 요청에 의해 수행될 수 있다.
과정 420에서는, 상기 스트리밍 서비스 제공 장치의 처리부가 상기 수신한 정보를 기반으로 상기 복수의 기기에 대한 최대 해상도 및 하드웨어 성능을 분석한다. 상기 처리부는 과정 430에서, 상기 분석 결과를 기반으로 상기 복수의 기기들에 자원 분배를 위한 우선순위 레이트들을 결정한다. 상기 우선순위 레이트는 상기 로컬 네트워크의 자원을 우선적으로 사용할 수 있는 비율을 의미하며, 상기 우선순위 레이트를 결정하는 구체적 과정은 도 5와 같이 수행될 수 있다.
도 5를 참조하면, 과정 510에서, 상기 처리부는 상기 복수의 기기의 최대 해상도를 비교하여, 상기 복수의 기기 중 적어도 두 개의 기기의 최대 해상도 크기가 동일한지를 판단한다. 상기 판단 결과, 상기 적어도 두 개의 기기의 최대 해상도 크기가 동일하지 않으면, 과정 511에서 상기 처리부는 상기 적어도 두 개의 기기 각각의 최대 해상도 크기에 따라 필요한 비디오 비트 레이트를 분석한다. 기기의 최대 해상도 크기에 대응하는 비트 레이트 분석 결과는 아래 표 1과 같다.
최대 해상도 크기 (p) 비디오 비트레이트 (Mbps)
2160p (4k) 40Mbps
1440p (2k) 10Mbps
1080p 8Mbps
720p 5Mbps
480p 2.5Mbps
360p 1Mbps
과정 512에서, 상기 처리부는 상기 분석된 비트 레이트를 기반으로 상기 적어도 두 개의 기기에 대한 우선순위 레이트들을 결정한다. 이를 테면, 제1 기기의 최대 해상도 크기가 2k (1440p)이고, 제2 기기의 최대 해상도 크기가 4k (2160p)인 경우, 상기 제1 기기는 10Mbps의 비트 레이트를 필요로 하고 상기 제2 기기는 40Mbps의 비트 레이트를 필요로 함을 알 수 있다. 상기 분석 결과에 따라, 상기 로컬 네트워크에서 가용한 자원에 대한 상기 제1 기기 및 상기 제2 기기의 우선순위 레이트들은 1:4 비율로 결정된다.
그러나, 과정 510에서의 판단 결과 상기 적어도 두 개의 기기의 최대 해상도 크기가 동일하면, 상기 처리부는 상기 적어도 두 개의 기기 각각의 하드웨어 성능을 추가 분석한다. 과정 520에서, 상기 처리부는 상기 적어도 두 개의 기기의 하드웨어 성능을 비교하여, 상기 적어도 두 개의 기기의 최대 해상도 크기가 동일한지를 판단한다. 상기 하드웨어 성능은 각 기기의 CPU나 RAM 성능을 기반으로 판단될 수 있다. 상기 판단 결과 상기 적어도 두 개의 기기의 하드웨어 성능이 동일하지 않으면, 과정 521에서 상기 처리부는 상기 분석된 하드웨어 성능을 기반으로 상기 적어도 두 개의 기기에 대한 우선순위 레이트들을 결정한다. 과정 520에서의 판단 결과 상기 적어도 두 개의 기기의 하드웨어 성능이 동일하면, 과정 522에서 상기 처리부는 상기 적어도 두 개의 기기에 동일한 우선순위 레이트를 부여하도록 결정한다.
다시 도 4를 참조하면, 상기 처리부는 상기 결정된 각 우선순위 레이트를 기반으로 상기 복수의 기기 각각에 자원을 할당한다. 상기 처리부는, 상기 우선순위 레이트를 기반으로 각 기기에 스루풋을 분배하고 (과정 440), 이에 따른 큐 스케줄링을 수행하며 (과정 450), 이후 상기 할당된 자원, 예를 들어 스루풋 및 큐 크기를 이용하여 상기 복수의 기기에 스트리밍 서비스를 제공한다.
한편, 상기 로컬 네트워크의 자원 상태가 상기 복수의 기기에 현재 설정된 해상도 크기(예를 들어, 최대 해상도 크기)로 스트리밍 서비스를 제공하기에 충분하지 못한 경우에는, 상기 우선순위 레이트들을 기반으로 상기 복수의 기기 전체에 대한 스루풋이 제한된다. 상기 처리부는 상기 로컬 네트워크의 자원 상태를 주기적으로 체크하여, 상기 로컬 네트워크의 전체 스루풋이 상기 복수의 기기에 현재 해상도 크기로 스트리밍 서비스를 제공하기에 충분한지를 판단할 수 있다. 상기 판단 결과 충분하지 않으면, 상기 복수의 기기가 현재 해상도보다 한 단계 낮은 차상위 해상도로 스트리밍 서비스를 제공받도록 상기 복수의 기기에 대해 결정된 우선순위 레이트들에 따른 비율을 유지하면서 각 기기 별 스루풋을 감소시킨다. 이를 테면, 최대 해상도 크기가 4k (2160p)인 기기는 차상위 해상도인 2k (1440p)로 낮추고, 최대 해상도 크기가 2k (1440p)인 기기는 차상위 해상도인 1080p로 낮추어 스트리밍 서비스를 제공한다.
상기 판단 결과 충분하면, 상기 처리부는 상기 복수의 기기에 대해 결정된 각 우선순위 레이트를 기반으로 상기 전체 스루풋을 분배하고, 상기 로컬 네트워크의 채널 상태 및/또는 자원 상태에 대한 주기적 모니터링을 지속적으로 수행한다. 이후, 상기 모니터링 결과 상기 로컬 네트워크의 채널 상태 및/또는 자원 상태가 열화되어, 상기 채널 상태 및/또는 자원 상태가 상기 복수의 기기에 최대 해상도 크기로 스트리밍 서비스를 제공하기에 충분하지 않은 것으로 판단되면, 상기 복수의 기기가 차상위 해상도로 스트리밍 서비스를 제공받을 수 있도록 상기 결정된 우선순위 레이트에 따라 기기 별 스루풋 및 큐 크기가 감소된다.
이를 위해, 상기 처리부는 차상위 해상도에 대응하는 비디오 비트 레이트 비율에 따라 상기 복수의 기기에 스루풋과 큐 할당량을 재조정한다. 이 과정에서, 상기 처리부는 일부의 기기에 대해서만 자원 사용을 제한하지 않고, 우선순위 레이트가 상대적으로 낮은 기기와 우선순위 레이트가 상대적으로 높은 기기에 대해 교대로 스루풋을 제한하도록 조정함으로써, 상기 복수의 기기 전체에 대한 서비스 품질을 균형적으로 유지할 수 있다.
만일, 최대 해상도 크기가 2k (1440p)인 제1 기기가 차상위 해상도로 스트리밍 서비스를 제공받는 경우, 상기 제1 기기의 현재 스루풋이 차상위 해상도인 1080p에 대응하는 비트 레이트 8Mbps에 근접하면 상기 제1 기기에 대한 스루풋 조정은 중단되고, 상기 제1 기기보다 최대 해상도가 높은 제2 기기에 대해 차상위 해상도 크기에 따른 스루풋 조정이 수행된다. 이후 상기 로컬 네트워크의 자원 상태가 상기 복수의 기기에 차상위 해상도로 스트리밍 서비스를 제공하기에도 충분하지 못한 경우에는, 상기 복수의 기기가 차상위 해상도보다 한 단계 더 낮은 차차상위 해상도로 스트리밍 서비스를 제공받도록 각 기기 별 스루풋이 제한된다. 상기 처리부는 상기 제1 기기의 스루풋을 차차상위 해상도인 720p에 대응하는 비트 레이트 5Mbps에 근접하도록 제한하며, 5Mbps에 근접 시 상기 제1 기기에 대한 스루풋은 유지하면서, 상기 제2 기기에 대한 스루풋이 차차상위 해상도 크기에 대응하도록 제한된다. 이러한 스루풋 제한 방식은 상기 로컬 네트워크의 자원 상태가 갑자기 열화되는 경우에도 동일하게 적용될 수 있다.
본 발명의 다양한 실시예들은 특정 관점에서 컴퓨터 리드 가능 기록 매체(computer readable recording medium)에서 컴퓨터 리드 가능 코드(computer readable code)로서 구현될 수 있다. 컴퓨터 리드 가능 기록 매체는 컴퓨터 시스템에 의해 리드될 수 있는 데이터를 저장할 수 있는 임의의 데이터 저장 디바이스이다. 컴퓨터 리드 가능 기록 매체의 예들은 읽기 전용 메모리(read only memory: ROM: ROM)와, 랜덤-접속 메모리(random access memory: RAM: 'RAM)와, 컴팩트 디스크- 리드 온니 메모리(compact disk-read only memory: CD-ROM)들과, 마그네틱 테이프(magnetic tape)들과, 플로피 디스크(floppy disk)들과, 광 데이터 저장 디바이스들, 및 캐리어 웨이브(carrier wave)들(인터넷을 통한 데이터 송신 등)을 포함할 수 있다. 컴퓨터 리드 가능 기록 매체는 또한 네트워크 연결된 컴퓨터 시스템들을 통해 분산될 수 있고, 따라서 컴퓨터 리드 가능 코드는 분산 방식으로 저장 및 실행된다. 또한, 본 발명의 다양한 실시예들을 성취하기 위한 기능적 프로그램들, 코드, 및 코드 세그먼트(segment)들은 본 발명이 적용되는 분야에서 숙련된 프로그래머들에 의해 쉽게 해석될 수 있다.
또한 본 발명의 다양한 실시예들에 따른 장치 및 방법은 하드웨어, 소프트웨어 또는 하드웨어 및 소프트웨어의 조합의 형태로 실현 가능하다는 것을 알 수 있을 것이다. 이러한 소프트웨어는 예를 들어, 삭제 가능 또는 재기록 가능 여부와 상관없이, ROM 등의 저장 장치와 같은 휘발성 또는 비휘발성 저장 장치, 또는 예를 들어, RAM, 메모리 칩, 장치 또는 집적 회로와 같은 메모리, 또는 예를 들어 콤팩트 디스크(compact disk: CD), DVD, 자기 디스크 또는 자기 테이프 등과 같은 광학 또는 자기적으로 기록 가능함과 동시에 기계(예를 들어, 컴퓨터)로 읽을 수 있는 저장 매체에 저장될 수 있다. 본 발명의 다양한 실시예들에 따른 방법은 제어부 및 메모리를 포함하는 컴퓨터 또는 휴대 단말에 의해 구현될 수 있고, 이러한 메모리는 본 발명의 실시예들을 구현하는 명령들을 포함하는 프로그램 또는 프로그램들을 저장하기에 적합한 기계로 읽을 수 있는 저장 매체의 한 예임을 알 수 있을 것이다.
따라서, 본 발명은 본 명세서의 청구항에 기재된 장치 또는 방법을 구현하기 위한 코드를 포함하는 프로그램 및 이러한 프로그램을 저장하는 기계(컴퓨터 등)로 읽을 수 있는 저장 매체를 포함한다. 또한, 이러한 프로그램은 유선 또는 무선 연결을 통해 전달되는 통신 신호와 같은 임의의 매체를 통해 전자적으로 이송될 수 있고, 본 발명은 이와 균등한 것을 적절하게 포함한다
또한 본 발명의 다양한 실시예들에 따른 장치는 유선 또는 무선으로 연결되는 프로그램 제공 장치로부터 프로그램을 수신하여 저장할 수 있다. 프로그램 제공 장치는 프로그램 처리 장치가 기 설정된 컨텐츠 보호 방법을 수행하도록 하는 지시들을 포함하는 프로그램, 컨텐츠 보호 방법에 필요한 정보 등을 저장하기 위한 메모리와, 그래픽 처리 장치와의 유선 또는 무선 통신을 수행하기 위한 통신부와, 그래픽 처리 장치의 요청 또는 자동으로 해당 프로그램을 송수신 장치로 전송하는 제어부를 포함할 수 있다.
본 명세서와 도면에 개시된 본 발명의 실시 예들은 본 발명의 기술 내용을 쉽게 설명하고, 본 발명의 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 또한 앞서 설명된 본 발명에 따른 실시예들은 예시적인 것에 불과하며, 당해 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 범위의 실시예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 다음의 특허청구범위에 의해서 정해져야 할 것이다.

Claims (18)

  1. 로컬 네트워크에 연결된 복수의 기기들에 스트리밍 서비스를 제공하는 방법에 있어서,
    상기 복수의 기기들에 대한 최대 해상도 정보를 획득하는 과정과,
    상기 획득한 최대 해상도 정보를 기반으로, 상기 복수의 기기들 중 제 1 기기에 대한 제 1 최대 해상도와 상기 복수의 기기들 중 제 2 기기에 대한 제 2 최대 해상도를 비교하는 과정과,
    상기 제 1 최대 해상도와 상기 제 2 최대 해상도가 동일하지 않으면, 상기 제 1 최대 해상도를 지원하기 위해 필요한 제 1 비트레이트와 상기 제 2 최대 해상도를 지원하기 위해 필요한 제 2 비트레이트를 확인하는 과정과,
    상기 제 1 비트레이트에 기반하여 상기 로컬 네트워크의 자원에서 상기 제 1 기기가 이용할 자원의 비율을 나타내는 제 1 우선순위 레이트와, 상기 로컬 네트워크의 자원에서 상기 제 2 기기가 이용할 자원의 비율을 나타내는 제 2 우선순위 레이트를 결정하는 과정과,
    상기 제 1 우선순위 레이트와 상기 제 2 우선순위 레이트를 기반으로 상기 제 1 기기와 상기 제 2 기기에 자원을 할당하는 과정과,
    상기 할당된 자원을 이용하여 상기 제 1 기기와 상기 제 2 기기에 스트리밍 서비스를 제공하는 과정을 포함하는 스트리밍 서비스 제공 방법.
  2. 삭제
  3. 삭제
  4. 제1항에 있어서,
    상기 제 1 최대 해상도와 상기 제 2 최대 해상도가 동일하면, 상기 제 1 기기와 상기 제 2 기기 각각에 대한 하드웨어 성능 정보를 확인하는 과정과,
    상기 제 1 기기와 상기 제 2 기기 각각에 대한 하드웨어 성능 정보를 기반으로, 상기 제 1 우선순위 레이트와 상기 제 2 우선순위 레이트를 결정하는 과정을 더 포함하는 스트리밍 서비스 제공 방법.
  5. 제4항에 있어서,
    상기 제 1 기기와 상기 제 2 기기 각각에 대한 하드웨어 성능 정보를 기반으로, 상기 제 1 우선순위 레이트와 상기 제 2 우선순위 레이트를 결정하는 과정은,
    상기 제 1 기기의 하드웨어 성능 정보와 상기 제 2 기기의 하드웨어 성능 정보가 동일하면, 동일한 값을 갖도록 상기 제 1 우선순위 레이트와 상기 제 2 우선순위 레이트를 결정하는 과정을 포함하는 스트리밍 서비스 제공 방법.
  6. 제1항에 있어서,
    상기 제 1 기기와 상기 제 2 기기에 자원을 할당하는 과정은,
    상기 로컬 네트워크에서 상기 제 1 최대 해상도와 상기 제 2 최대 해상도에 대한 스트리밍 서비스를 제공하는 것이 가능한지 여부를 판단하는 과정과,
    상기 제 1 최대 해상도와 상기 제 2 최대 해상도에 대한 스트리밍 서비스를 제공하는 것이 가능하지 않은 경우, 상기 제 1 우선순위 레이트와 상기 제 2 우선순위 레이트를 기반으로 상기 제 1 기기와 상기 제 2 기기 각각에 대해 결정된 스루풋(throughput) 및 큐(queue)의 크기를 조정하는 과정과,
    상기 제 1 기기와 상기 제 2 기기 각각에 대해 조정된 스루풋 및 큐의 크기를 기반으로 상기 제 1 기기와 상기 제 2 기기에 자원을 할당하는 과정을 포함하며,
    상기 제 1 기기와 상기 제 2 기기 각각에 대해 조정된 스루풋 및 큐의 크기는 상기 제 1 최대 해상도 및 상기 제 2 최대 해상도 중 적어도 하나 보다 낮은 해상도의 스트리밍 서비스에 대응하도록 조정되며,
    상기 제 1 기기와 상기 제 2 기기 각각에 대해 조정된 스루풋은 설정된 시간동안 상기 제 1 기기와 상기 제 2 기기 각각으로 송신할 데이터량을 나타냄을 특징으로 하는 스트리밍 서비스 제공 방법.
  7. 제6항에 있어서,
    상기 제 1 기기와 상기 제 2 기기 각각에 대해 결정된 스루풋 및 큐의 크기를 조정하는 과정은,
    상기 제 1 기기에 대해 결정된 스루풋과 상기 제 2 기기에 대해 결정된 스루풋을 교대로 조정하는 과정을 포함하는 스트리밍 서비스 제공 방법.
  8. 제1항에 있어서,
    상기 제 1 기기와 상기 제 2 기기에 자원을 할당하는 과정은,
    상기 로컬 네트워크에서 상기 제 1 최대 해상도와 상기 제 2 최대 해상도에 대한 스트리밍 서비스를 제공하는 것이 가능한지 여부를 판단하는 과정과,
    상기 제 1 최대 해상도와 상기 제 2 최대 해상도에 대한 스트리밍 서비스를 제공하는 것이 가능한 경우, 상기 제 1 우선순위 레이트와 상기 제 2 우선순위 레이트를 기반으로 상기 제 1 기기와 상기 제 2 기기 각각에 대한 스루풋(throughput) 및 큐(queue)의 크기를 결정하는 과정과,
    상기 제 1 기기와 상기 제 2 기기 각각에 대해 결정된 스루풋 및 큐의 크기를 기반으로 상기 제 1 기기와 상기 제 2 기기에 자원을 할당하는 과정을 포함하며,
    상기 제 1 기기와 상기 제 2 기기 각각에 대해 결정된 스루풋은 설정된 시간동안 상기 제 1 기기와 상기 제 2 기기 각각으로 송신할 데이터량을 나타냄을 특징으로 하는 스트리밍 서비스 제공 방법.
  9. 제8항에 있어서,
    상기 로컬 네트워크의 자원 상태를 주기적으로 모니터링하는 과정과,
    상기 모니터링 결과 상기 로컬 네트워크의 자원 상태가 열화된 것으로 판단되면, 상기 제 1 우선순위 레이트와 상기 제 2 우선순위 레이트를 기반으로 상기 제 1 기기와 상기 제 2 기기 각각에 대해 결정된 스루풋 및 큐의 크기를 조정하는 과정을 더 포함하는 스트리밍 서비스 제공 방법.
  10. 스트리밍 서비스 제공 장치에 있어서,
    수신부와,
    상기 수신부를 제어하는 처리부를 포함하며,
    상기 처리부는,
    상기 수신부를 통해 로컬 네트워크에 연결된 복수의 기기들에 대한 최대 해상도 정보를 획득하고,
    상기 획득한 최대 해상도 정보를 기반으로, 상기 복수의 기기들 중 제 1 기기에 대한 제 1 최대 해상도와 상기 복수의 기기들 중 제 2 기기에 대한 제 2 최대 해상도를 비교하고,
    상기 제 1 최대 해상도와 상기 제 2 최대 해상도가 동일하지 않으면, 상기 제 1 최대 해상도를 지원하기 위해 필요한 제 1 비트레이트와 상기 제 2 최대 해상도를 지원하기 위해 필요한 제 2 비트레이트를 확인하고,
    상기 제 1 비트레이트에 기반하여 상기 로컬 네트워크의 자원에서 상기 제 1 기기가 이용할 자원의 비율을 나타내는 제 1 우선순위 레이트와, 상기 로컬 네트워크의 자원에서 상기 제 2 기기가 이용할 자원의 비율을 나타내는 제 2 우선순위 레이트를 결정하고,
    상기 제 1 우선순위 레이트와 상기 제 2 우선순위 레이트를 기반으로 상기 제 1 기기와 상기 제 2 기기에 자원을 할당하며,
    상기 할당된 자원을 이용하여 상기 제 1 기기와 상기 제 2 기기에 스트리밍 서비스를 제공함을 특징으로 하는 스트리밍 서비스 제공 장치.
  11. 삭제
  12. 삭제
  13. 제10항에 있어서, 상기 처리부는,
    상기 제 1 최대 해상도와 상기 제 2 최대 해상도가 동일하면, 상기 제 1 기기와 상기 제 2 기기 각각에 대한 하드웨어 성능 정보를 확인하고,
    상기 제 1 기기와 상기 제 2 기기 각각에 대한 하드웨어 성능 정보를 기반으로, 상기 제 1 우선순위 레이트와 상기 제 2 우선순위 레이트를 결정함을 특징으로 하는 스트리밍 서비스 제공 장치.
  14. 제13항에 있어서, 상기 처리부는,
    상기 제 1 기기의 하드웨어 성능 정보와 상기 제 2 기기의 하드웨어 성능 정보가 동일하면, 동일한 값을 갖도록 상기 제 1 우선순위 레이트와 상기 제 2 우선순위 레이트를 결정함을 특징으로 하는 스트리밍 서비스 제공 장치.
  15. 제10항에 있어서, 상기 처리부는,
    상기 처리부는,
    상기 로컬 네트워크에서 상기 제 1 최대 해상도와 상기 제 2 최대 해상도에 대한 스트리밍 서비스를 제공하는 것이 가능한지 여부를 판단하고,
    상기 제 1 최대 해상도와 상기 제 2 최대 해상도에 대한 스트리밍 서비스를 제공하는 것이 가능하지 않은 경우, 상기 제 1 우선순위 레이트와 상기 제 2 우선순위 레이트를 기반으로 상기 제 1 기기와 상기 제 2 기기 각각에 대해 결정된 스루풋(throughput) 및 큐(queue)의 크기를 조정하고,
    상기 제 1 기기와 상기 제 2 기기 각각에 대해 조정된 스루풋 및 큐의 크기를 기반으로 상기 제 1 기기와 상기 제 2 기기에 자원을 할당하며,
    상기 제 1 기기와 상기 제 2 기기 각각에 대해 조정된 스루풋 및 큐의 크기는 상기 제 1 최대 해상도 및 상기 제 2 최대 해상도 중 적어도 하나 보다 낮은 해상도의 스트리밍 서비스에 대응하도록 조정되며,
    상기 제 1 기기와 상기 제 2 기기 각각에 대해 조정된 스루풋은 설정된 시간동안 상기 제 1 기기와 상기 제 2 기기 각각으로 송신할 데이터량을 나타냄을 특징으로 하는 스트리밍 서비스 제공 장치.
  16. 제15항에 있어서, 상기 처리부는,
    상기 제 1 기기에 대해 결정된 스루풋과 상기 제 2 기기에 대해 결정된 스루풋을 교대로 조정함을 특징으로 하는 스트리밍 서비스 제공 장치.
  17. 제10항에 있어서, 상기 처리부는,
    상기 로컬 네트워크에서 상기 제 1 최대 해상도와 상기 제 2 최대 해상도에 대한 스트리밍 서비스를 제공하는 것이 가능한지 여부를 판단하고,
    상기 제 1 최대 해상도와 상기 제 2 최대 해상도에 대한 스트리밍 서비스를 제공하는 것이 가능한 경우, 상기 제 1 우선순위 레이트와 상기 제 2 우선순위 레이트를 기반으로 상기 상기 제 1 기기와 상기 제 2 기기 각각에 대한 스루풋(throughput) 및 큐(queue)의 크기를 결정하고,
    상기 제 1 기기와 상기 제 2 기기 각각에 대해 결정된 스루풋 및 큐의 크기를 기반으로 상기 제 1 기기와 상기 제 2 기기에 자원을 할당하며,
    상기 제 1 기기와 상기 제 2 기기 각각에 대해 결정된 스루풋은 설정된 시간동안 상기 제 1 기기와 상기 제 2 기기 각각으로 송신할 데이터량을 나타냄을 특징으로 하는 스트리밍 서비스 제공 장치.
  18. 제17항에 있어서, 상기 처리부는,
    상기 로컬 네트워크의 자원 상태를 주기적으로 모니터링하는 과정과,
    상기 모니터링 결과 상기 로컬 네트워크의 자원 상태가 열화된 것으로 판단되면, 상기 제 1 우선순위 레이트와 상기 제 2 우선순위 레이트를 기반으로 상기 제 1 기기와 상기 제 2 기기 각각에 대해 결정된 스루풋 및 큐의 크기를 조정함을 특징으로 하는 스트리밍 서비스 제공 장치.
KR1020170144610A 2017-11-01 2017-11-01 스트리밍 서비스 제공 방법 및 장치 KR102385447B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020170144610A KR102385447B1 (ko) 2017-11-01 2017-11-01 스트리밍 서비스 제공 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170144610A KR102385447B1 (ko) 2017-11-01 2017-11-01 스트리밍 서비스 제공 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20190049111A KR20190049111A (ko) 2019-05-09
KR102385447B1 true KR102385447B1 (ko) 2022-04-14

Family

ID=66546798

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170144610A KR102385447B1 (ko) 2017-11-01 2017-11-01 스트리밍 서비스 제공 방법 및 장치

Country Status (1)

Country Link
KR (1) KR102385447B1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102348492B1 (ko) * 2021-06-22 2022-01-07 주식회사 쿼렌시스 영상 전송 시스템 및 영상 전송 방법

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101718127B1 (ko) * 2016-02-24 2017-03-20 광운대학교 산학협력단 상황 인지 스트리밍 서비스를 위한 콘텐츠 패키징 시스템 및 스트리밍 방법

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100947610B1 (ko) * 2007-12-17 2010-03-15 한국전자통신연구원 통합 시스템의 자원 할당 방법
KR102246465B1 (ko) * 2014-12-12 2021-04-30 삼성전자 주식회사 무선 통신 시스템에서 자원 분배 방법 및 장치

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101718127B1 (ko) * 2016-02-24 2017-03-20 광운대학교 산학협력단 상황 인지 스트리밍 서비스를 위한 콘텐츠 패키징 시스템 및 스트리밍 방법

Also Published As

Publication number Publication date
KR20190049111A (ko) 2019-05-09

Similar Documents

Publication Publication Date Title
US10419787B2 (en) Dynamic programming across multiple streams
US10277530B2 (en) Allocating portions of a shared network resource based on client device groups
US10680911B2 (en) Quality of experience based network resource management
US9609370B2 (en) Video delivery modification based on network availability
US8036125B2 (en) Apparatus and method for transmitting multimedia stream using virtual machines based on a number of transmissions at a data rate
US9967300B2 (en) Method and apparatus for scheduling adaptive bit rate streams
JP6268090B2 (ja) 帯域幅および対応する装置を制御する方法
EP3172862B1 (en) Joint quality management across multiple streams
US10104407B2 (en) Method and device for network-assisted client-centric QoE optimization
EP3172861B1 (en) Generating and utilizing contextual network analytics
KR102385447B1 (ko) 스트리밍 서비스 제공 방법 및 장치
US8374141B2 (en) Method and apparatus for allocating channel bandwidth in wireless internet protocol television systems
JP6276206B2 (ja) 帯域割り当て制御装置及び帯域割り当て制御方法
KR102441632B1 (ko) 실시간 방송 서비스를 제공하는 방법, 실시간 방송 서비스를 제공하는 액세스 포인트 및 단말
KR20130048442A (ko) 다중 채널을 이용한 콘텐츠 제공 방법 및 시스템
Lopes et al. Real-time video frame differentiation in multihomed VANETs
KR101850696B1 (ko) 멀티미디어 콘텐츠의 다중분할 전송 방법 및 장치
KR20190112483A (ko) 영상 처리 장치 및 그 영상 처리 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant