KR101650756B1 - QoS 보장 영상 스트림 방법 및 시스템과 송신 서버 - Google Patents

QoS 보장 영상 스트림 방법 및 시스템과 송신 서버 Download PDF

Info

Publication number
KR101650756B1
KR101650756B1 KR1020140100546A KR20140100546A KR101650756B1 KR 101650756 B1 KR101650756 B1 KR 101650756B1 KR 1020140100546 A KR1020140100546 A KR 1020140100546A KR 20140100546 A KR20140100546 A KR 20140100546A KR 101650756 B1 KR101650756 B1 KR 101650756B1
Authority
KR
South Korea
Prior art keywords
video stream
layer
network status
status information
user terminal
Prior art date
Application number
KR1020140100546A
Other languages
English (en)
Other versions
KR20160016419A (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 KR1020140100546A priority Critical patent/KR101650756B1/ko
Priority to PCT/KR2014/010776 priority patent/WO2016021773A1/ko
Priority to CN201410840681.2A priority patent/CN105323651B/zh
Priority to US14/588,129 priority patent/US9954926B2/en
Publication of KR20160016419A publication Critical patent/KR20160016419A/ko
Application granted granted Critical
Publication of KR101650756B1 publication Critical patent/KR101650756B1/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/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/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/752Media network packet handling adapting media to network capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/762Media network packet handling at the source 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/187Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scalable video layer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • 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/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • 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/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23418Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
    • 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/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234327Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by decomposing into layers, e.g. base layer and one or more enhancement layers
    • 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/23805Controlling the feeding rate to the network, e.g. by controlling the video pump
    • 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/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/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64723Monitoring of network processes or resources, e.g. monitoring of network load
    • H04N21/64738Monitoring network characteristics, e.g. bandwidth, congestion level
    • 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/647Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load, bridging between two different networks, e.g. between IP and wireless
    • H04N21/64746Control signals issued by the network directed to the server or the client
    • H04N21/64761Control signals issued by the network directed to the server or the client directed to the server
    • H04N21/64769Control signals issued by the network directed to the server or the client directed to the server for rate control

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

본 발명의 일 실시예에 따른 QoS 보장 영상 스트림 방법은 송신 서버가 복수 개의 레이어(Layer)마다 서로 다른 영상 스트림 데이터를 포함하는 영상 스트림을 중계 서버로 전송하는 단계; 상기 송신 서버가 상기 중계 서버와 상기 송신 서버 간의 네트워크 상태에 관한 정보인 제1 구간 네트워크 상태 정보를 상기 중계 서버로부터 수신하는 단계; 상기 송신 서버가 상기 복수의 사용자 단말 각각과 상기 송신 서버 간의 네트워크 상태에 관한 정보인 제2 구간 네트워크 상태 정보를 수신하는 단계; 및 상기 송신 서버가 상기 제1 구간의 네트워크 상태 정보 및 상기 제2 구간의 네트워크 상태 정보를 이용하여 상기 중계 서버를 통하여 상기 복수의 사용자 단말 각각에게 전송되는 영상 스트림의 품질을 상기 레이어 별로 조절하는 단계를 포함할 수 있다.

Description

QoS 보장 영상 스트림 방법 및 시스템과 송신 서버{QoS-Guaranteed Video Stream Method and System, Transmitting Server}
본 발명은 QoS 보장 영상 스트림 방법 및 시스템과 송신 서버에 관한 것이다. 보다 상세하게는, 본 발명은 복수 개의 레이어를 이용하여 영상 스트림을 제공하는 방식에서 QoS를 보장하는 QoS 보장 영상 스트림 방법 및 시스템과 송신 서버에 관한 것이다.
모바일 디바이스의 발전과 모바일 네트워크의 발전으로 인하여 모바일 디바이스를 이용하여 여러 사용자 간에 영상을 실시간으로 주고 받는 모바일 VoIP(Voice over internet Protocol) 서비스가 활성화되고 있다. 또한, 모바일 디바이스를 대상으로 프로 야구 생중계 등과 같은 실시간 스트리밍 서비스도 활성화되고 있다.
영상 스트림(Video Stream)을 다수의 사용자에게 전송하기 위해 스케일러블 영상 코덱(SVC, Scalable Video Codec)을 사용할 수 있다. H.264 SVC와 같은 스케일러블 영상 코덱은 하나의 영상 스트림을 다수의 레이어로 구성하여 전송할 수 있다.
스케일러블 영상 코덱을 이용한 영상 스트림 제공 기술은 송신 서버가 하나의 영상 스트림을 중계 서버로 전송하고, 복수의 사용자 단말은 중계 서버로 접속을 하여 영상 스트림을 수신하는 방식으로 동작한다.
기존 스케일러블 영상 코덱을 이용한 영상 스트림 제공 기술은 송신 서버와 중계 서버 사이의 네트워크 상황에 최적화된 영상 스트림을 전송한다. 따라서, 사용자 단말이 수신하는 레이어의 영상 품질은 송신 서버와 중계 서버 사이의 네트워크 상황을 기반으로 정의된 레이어 별 영상 품질을 가지는 영상 스트림 중 하나 레이어를 선택하는 방식만을 제공할 수 있다. 즉, 사용자 단말과 중계 서버 사이의 네트워크 상태가 송신 서버가 전송하는 영상 스트림의 품질에 영향을 미치지 못하는 한계가 존재한다.
본 발명의 일 실시예가 해결하고자 하는 기술적 과제는, 송신 서버와 중계 서버간 네트워크 상태뿐만 아니라 중계 서버와 각 사용자 단말 간의 네트워크 상태를 모두 고려하여 각 사용자 단말에게 제공하는 영상 품질을 각 레이어 별로 조절하는 QoS 보장 영상 스트림 방법 및 시스템과 송신 서버를 제공하는 것이다.
또한, 본 발명의 일 실시예가 해결하고자 하는 기술적 과제는, 스케일러블 영상 코덱(SVC, Scalable Video Codec)와 같은 복수 개의 레이어를 이용하여 영상 스트림을 제공할 때 QoS(Quality of Service)를 보장하며 영상 스트림을 제공하는 QoS 보장 영상 스트림 방법 및 시스템과 송신 서버를 제공하는 것이다.
본 발명의 기술적 과제들은 이상에서 언급한 기술적 과제들로 제한되지 않으며, 언급되지 않은 또 다른 기술적 과제들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해 될 수 있을 것이다.
상기 기술적 과제를 달성하기 위한 본 발명의 제1 실시예에 따른 QoS 보장 영상 스트림 방법은 송신 서버가 복수 개의 레이어(Layer)마다 서로 다른 영상 스트림 데이터를 포함하는 영상 스트림을 중계 서버로 전송하는 단계; 상기 송신 서버가 상기 중계 서버와 상기 송신 서버 간의 네트워크 상태에 관한 정보인 제1 구간 네트워크 상태 정보를 상기 중계 서버로부터 수신하는 단계; 상기 송신 서버가 상기 복수의 사용자 단말 각각과 상기 송신 서버 간의 네트워크 상태에 관한 정보인 제2 구간 네트워크 상태 정보를 수신하는 단계; 및 상기 송신 서버가 상기 제1 구간의 네트워크 상태 정보 및 상기 제2 구간의 네트워크 상태 정보를 이용하여 상기 중계 서버를 통하여 상기 복수의 사용자 단말 각각에게 전송되는 영상 스트림의 품질을 상기 레이어 별로 조절하는 단계를 포함할 수 있다.
일 실시예에 따르면, 상기 제1 구간 네트워크 상태 정보는 상기 사용자 단말 별로 가용 대역폭(Available Bandwidth)을 산출하기 위해 필요한 정보를 포함할 수 있다.
일 실시예에 따르면, 상기 제1 구간 네트워크 상태 정보는 패킷 로스(Packet Loss), 지터(Jitter) 및 지연(Delay) 중 적어도 어느 하나의 정보를 포함할 수 있다.
일 실시예에 따르면, 상기 제2 구간 네트워크 상태 정보를 수신하는 단계는, 상기 복수의 사용자 단말 각각이 전송한 상기 제2 구간 네트워크 상태 정보를 상기 중계 서버를 통하여 수신할 수 있다.
일 실시예에 따르면, 상기 영상 스트림을 중계 서버로 전송하는 단계는, 상기 송신 서버가 스케일러블 영상 코덱 기술을 이용하여 상기 복수 개의 레이어 마다 서로 다른 영상 스트림 데이터가 포함되도록 생성한 영상 스트림을 전송할 수 있다.
일 실시예에 따르면, 상기 제2 구간 네트워크 상태 정보는 상기 사용자 단말 별로 가용 대역폭(Available Bandwidth)을 산출하기 위해 필요한 정보 및 상기 제2 구간 네트워크 상태 정보에 포함되는 네트워크 정보를 전송한 사용자 단말의 식별 정보를 포함할 수 있다.
일 실시예에 따르면, 상기 제2 구간 네트워크 상태 정보는 패킷 로스(Packet Loss), 지터(Jitter) 및 지연(Delay) 중 적어도 어느 하나의 정보 및 상기 제2 구간 네트워크 상태 정보에 포함되는 네트워크 정보를 전송한 사용자 단말의 식별 정보를 포함할 수 있다.
일 실시예에 따르면, 상기 복수 개의 레이어는 제1 레이어 및 상기 제2 레이어를 포함하며, 상기 영상 스트림의 품질을 상기 레이어 별로 조절하는 단계는, 상기 제2 레이어를 이용하여 영상 스트림을 수신하는 사용자 단말 중 가용 대역폭이 가장 낮은 사용자 단말의 가용 대역폭을 기반으로 상기 제2 레이어를 이용하여 전송하는 영상 스트림의 품질을 조절하는 단계를 더 포함할 수 있다.
일 실시예에 따르면, 상기 영상 스트림의 품질을 상기 레이어 별로 조절하는 단계는, 상기 가용 대역폭이 가장 낮은 사용자 단말을 포함하여 상기 제2 레이어를 이용하여 영상 스트림을 수신하는 사용자 단말 중 가용 대역폭이 기 설정된 가용 대역폭 기준 이하인 사용자 단말에 전송되는 영상 스트림을 상기 제1 레이어로 변경하는 단계를 더 포함할 수 있다.
일 실시예에 따르면, 상기 영상 스트림의 품질을 상기 레이어 별로 조절하는 단계는, 상기 제2 레이어를 이용하여 영상 스트림을 수신하는 사용자 단말 중 상기 기 설정된 가용 대역폭 기준 이하인 사용자 단말을 제외하고 가장 가용 대역폭이 낮은 사용자 단말의 가용 대역폭을 기반으로 상기 제2 레이어를 이용하여 전송하는 영상 스트림의 품질을 조절하는 단계를 더 포함할 수 있다.
일 실시예에 따르면, 상기 영상 스트림의 품질을 상기 레이어 별로 조절하는 단계는, 상기 기 설정된 가용 대역폭 기준 이하인 사용자 단말 중에서 상기 기 설정된 중요 단말이 포함된 경우, 상기 기 설정된 중요 단말의 가용 대역폭을 기반으로 상기 제2 레이어를 이용하여 전송하는 영상 스트림의 품질을 조절하는 단계를 더 포함할 수 있다.
일 실시예에 따르면, 상기 제1 구간의 네트워크 상태 정보 및 제2 구간의 네트워크 상태 정보는 패킷 로스(Packet Loss), 지터(Jitter) 및 지연(Delay) 중 적어도 어느 하나를 포함하며, 상기 영상 스트림의 품질을 상기 레이어 별로 조절하는 단계는, 상기 패킷 로스(Packet Loss), 지터(Jitter) 및 지연(Delay) 중 적어도 어느 하나의 수치 변동을 기반으로 상기 레이어 별로 영상 스트림 품질을 조절하는 단계를 더 포함할 수 있다.
상기 기술적 과제를 달성하기 위한 본 발명의 제2 실시예에 따른 송신 서버는 복수 개의 레이어(Layer)마다 서로 다른 영상 스트림 데이터를 포함하는 영상 스트림을 중계 서버로 전송하는 전송부; 상기 중계 서버와 상기 송신 서버 간의 네트워크 상태에 관한 정보인 제1 구간 네트워크 상태 정보를 상기 중계 서버로부터 수신하는 제1 수신부; 상기 복수의 사용자 단말 각각과 상기 송신 서버 간의 네트워크 상태에 관한 정보인 제2 구간 네트워크 상태 정보를 수신하는 제2 수신부; 및 상기 제1 구간의 네트워크 상태 정보 및 상기 제2 구간의 네트워크 상태 정보를 이용하여 상기 중계 서버를 통하여 상기 복수의 사용자 단말 각각에게 전송되는 영상 스트림의 품질을 상기 레이어 별로 조절하는 조절부를 포함할 수 있다.
상기 기술적 과제를 달성하기 위한 본 발명의 제3 실시예에 따른 QoS 보장 영상 스트림 시스템은 복수 개의 레이어(Layer)마다 서로 다른 영상 스트림 데이터를 포함하는 영상 스트림을 중계 서버로 전송하는 송신 서버; 상기 송신 서버와의 네트워크 상태에 관한 정보인 제1 구간 네트워크 상태 정보를 상기 송신 서버로 전송하는 중계 서버; 및 상기 송신 서버와의 네트워크 상태에 관한 정보인 제2 구간 네트워크 상태 정보를 상기 중계 서버를 통하여 상기 송신 서버로 전송하는 복수 개의 사용자 단말을 포함하되, 상기 송신 서버는, 상기 제1 구간의 네트워크 상태 정보 및 상기 제2 구간의 네트워크 상태 정보를 이용하여 상기 중계 서버를 통하여 상기 복수 개의 사용자 단말 각각에게 전송되는 영상 스트림의 품질을 상기 레이어 별로 조절할 수 있다.
상기 기술적 과제를 달성하기 위한 본 발명의 제4 실시예에 따른 QoS 보장 영상 스트림 방법은 송신 서버가 복수 개의 레이어(Layer)마다 서로 다른 영상 스트림 데이터를 포함하는 영상 스트림을 중계 서버로 전송하는 단계; 상기 송신 서버가 상기 중계 서버와 상기 송신 서버 간의 네트워크 상태에 관한 정보인 제1 구간 네트워크 상태 정보를 상기 중계 서버로부터 수신하는 단계; 상기 송신 서버가 상기 복수의 사용자 단말 각각과 상기 중계 서버 간의 네트워크 상태에 관한 정보인 제2 구간 네트워크 상태 정보를 수신하는 단계; 및 상기 송신 서버가 상기 제1 구간의 네트워크 상태 정보 및 상기 제2 구간의 네트워크 상태 정보를 이용하여 상기 중계 서버를 통하여 상기 복수의 사용자 단말 각각에게 전송되는 영상 스트림의 품질을 상기 레이어 별로 조절하는 단계를 포함할 수 있다.
상기 기술적 과제를 달성하기 위한 본 발명의 제5 실시예에 따른 QoS 보장 영상 스트림 방법은 송신 단말이 복수 개의 레이어(Layer)마다 서로 다른 영상 스트림 데이터를 포함하는 영상 스트림을 중계 서버로 전송하는 단계; 상기 송신 단말이 상기 중계 서버와 상기 송신 단말 간의 네트워크 상태에 관한 정보인 제1 구간 네트워크 상태 정보를 상기 중계 서버로부터 수신하는 단계; 상기 송신 단말이 상기 복수의 사용자 단말 각각과 상기 송신 단말 간의 네트워크 상태에 관한 정보인 제2 구간 네트워크 상태 정보를 수신하는 단계; 및 상기 송신 단말이 상기 제1 구간의 네트워크 상태 정보 및 상기 제2 구간의 네트워크 상태 정보를 이용하여 상기 중계 서버를 통하여 상기 복수의 사용자 단말 각각에게 전송되는 영상 스트림의 품질을 상기 레이어 별로 조절하는 단계를 포함할 수 있다.
본 발명의 일 실시예에 따르면, 스케일러블 영상 코덱(SVC, Scalable Video Codec)와 같은 복수 개의 레이어를 이용하여 영상 스트림을 제공할 때 QoS(Quality of Service)를 보장하며 영상 스트림을 제공할 수 있다.
또한, 본 발명은 송신 서버, 중계 서버 및 각 사용자 단말 간 전체 네트워크 상태를 고려하여 영상 품질을 조절하여 각 사용자 단말에게 네트워크 상황에 최적화된 품질의 영상 스트림을 제공할 수 있다.
본 발명의 효과들은 이상에서 언급한 효과들로 제한되지 않으며, 언급되지 않은 또 다른 효과들은 아래의 기재로부터 통상의 기술자에게 명확하게 이해 될 수 있을 것이다.
도 1은 본 발명의 일 실시예에 따른 QoS 보장 영상 스트림 시스템에 관한 블록도이다.
도 2 및 도 3은 스케일러블 영상 코덱 기술이 복수 개의 레이어를 이용하여 사용자 단말 별로 서로 다른 품질의 영상 스트림을 제공하는 방법을 설명하는 도면이다.
도 4는 각 사용자 단말이 수신하는 영상 스트림에 관한 일 예를 나타내는 도면이다.
도 5는 제1 구간 네트워크 상태 정보를 설명하기 위한 도면이다.
도 6a 및 6b는 제2 구간 네트워크 상태 정보를 설명하기 위한 도면이다.
도 7은 본 발명의 다른 실시예에 따른 QoS 보장 영상 스트림 방법을 나타내는 신호 흐름도이다.
도 8 내지 10은 송신 서버가 레이어 별로 영상 스트림의 품질을 조절하는 예를 설명하기 위한 도면이다.
도 11은 본 발명의 또 다른 실시예에 따른 송신 서버를 나타내는 블록도이다.
이하, 첨부된 도면을 참조하여 본 발명의 실시예를 상세히 설명한다. 본 발명의 이점 및 특징, 그리고 그것들을 달성하는 방법은 첨부되는 도면과 함께 상세하게 후술되어 있는 실시 예들을 참조하면 명확해질 것이다. 그러나 본 발명은 이하에서 게시되는 실시 예들에 한정되는 것이 아니라 서로 다른 다양한 형태로 구현될 수 있으며, 단지 본 실시 예들은 본 발명의 게시가 완전하도록 하고, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 발명의 범주를 완전하게 알려주기 위해 제공되는 것이며, 본 발명은 청구항의 범주에 의해 정의될 뿐이다. 명세서 전체에 걸쳐 동일 참조 부호는 동일 구성 요소를 지칭한다.
다른 정의가 없다면, 본 명세서에서 사용되는 모든 용어(기술 및 과학적 용어를 포함)는 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자에게 공통적으로 이해될 수 있는 의미로 사용될 수 있을 것이다. 또 일반적으로 사용되는 사전에 정의되어 있는 용어들은 명백하게 특별히 정의되어 있지 않는 한 이상적으로 또는 과도하게 해석되지 않는다.
본 명세서에서, 단수형은 문구에서 특별히 언급하지 않는 한 복수형도 포함될 수 있다. 명세서에서 사용되는 "포함한다(comprises)" 및/또는 "포함하는(comprising)"은 언급된 구성요소, 단계, 동작 및/또는 소자는 하나 이상의 다른 구성요소, 단계, 동작 및/또는 소자의 존재 또는 추가를 배제하지 않는다.
도 1은 본 발명의 일 실시예에 따른 QoS 보장 영상 스트림 시스템에 관한 블록도이다.
도 1을 참조하면, 본 발명의 일 실시예에 따른 QoS 보장 영상 스트림 시스템은 송신 서버(100), 중계 서버(200) 및 복수 개의 사용자 단말(300)을 포함할 수 있다.
송신 서버(100)는 중계 서버(200)로 영상 스트림을 전송한다.
중계 서버(200)는 송신 서버(100)로부터 전송 받은 영상 스트림을 복수 개의 사용자 단말(300)로 전송한다.
본 발명의 일 실시예에 따른 QoS 보장 영상 스트림 시스템은 유선 또는 무선의 네트워크를 이용하여 사용자 단말에 영상 스트림을 제공하는 서비스에 이용될 수 있다.
본 발명의 일 실시예에 따른 QoS 보장 영상 스트림 시스템은 사용자 단말이 하나뿐인 경우에도 적용이 가능하며, 복수 개인 경우도 효과적으로 적용될 수 있다.
특히, 본 발명의 일 실시예에 따른 QoS 보장 영상 스트림 시스템은 스케일러블 영상 코덱(SVC, Scalable Video Codec)와 같은 복수 개의 레이어(10)(Layer)를 이용하여 영상 스트림을 제공하는 서비스에 효과적으로 이용될 수 있다.
도 2 및 도 3은 스케일러블 영상 코덱 기술이 복수 개의 레이어(10)를 이용하여 사용자 단말 별로 서로 다른 품질의 영상 스트림을 제공하는 방법을 설명하는 도면이다.
복수 개의 레이어(10)는 2개 내지 8개 또는 그 이상의 레이어를 가질 수 있으나, 도 2 및 도 3에서는 제1 레이어(11), 제2 레이어(12), 제3 레이어(13) 및 제4 레이어(14)를 포함하는 경우를 예로 들어 설명한다.
송신 서버(100)는 제1 레이어(11) 내지 제4 레이어(14)를 이용하여 중계 서버(200)를 통하여 사용자 단말에게 영상 스트림을 전송한다.
사용자 단말은 제1 레이어(11)를 이용하면 제1 영상 스트림 데이터(21)를 수신할 수 있다. 또는, 사용자 단말은 제1 레이어(11) 및 제2 레이어(12)를 이용하여 제1 영상 스트림 데이터(21) 및 제2 영상 스트림 데이터(22)를 수신할 수 있다.
또는, 사용자 단말은 제1 레이어(11), 제2 레이어(12) 및 제3 레이어(13)를 이용하여 제1 영상 스트림 데이터(21), 제2 영상 스트림 데이터(22) 및 제3 영상 스트림 데이터(23)를 수신할 수 있다. 또는, 사용자 단말은 제1 레이어(11), 제2 레이어(12), 제3 레이어(13) 및 제4 레이어(14)를 이용하여 제1 영상 스트림 데이터(21), 제2 영상 스트림 데이터(22), 제3 영상 스트림 데이터(23) 및 제4 영상 데이터를 수신할 수 있다.
도 3을 참조하면, 사용자 단말이 제1 레이어(11)를 이용하여 제1 영상 스트림 데이터(21)만을 수신하는 경우 제공 받은 영상의 품질보다 제1 레이어(11) 및 제2 레이어(12)를 이용하여 제1 영상 스트림 데이터(21) 및 제2 영상 스트림 데이터(22)를 수신하는 경우 제공 받은 영상의 품질이 더 좋은 것을 볼 수 있다.
또한, 제1 레이어(11) 및 제2 레이어(12)를 이용하여 제1 영상 스트림 데이터(21) 및 제2 영상 스트림 데이터(22)를 수신하는 경우 제공 받은 영상의 품질보다 제1 레이어(11), 제2 레이어(12) 및 제3 레이어(13)를 이용하여 제1 영상 스트림 데이터(21), 제2 영상 스트림 데이터(22) 및 제3 영상 스트림 데이터(23)를 수신하는 경우 제공 받은 영상의 품질이 더 좋은 것을 볼 수 있다.
또한, 제1 레이어(11), 제2 레이어(12) 및 제3 레이어(13)를 이용하여 제1 영상 스트림 데이터(21), 제2 영상 스트림 데이터(22) 및 제3 영상 데이터를 수신하는 경우 제공 받은 영상의 품질보다 제1 레이어(11), 제2 레이어(12), 제3 레이어(13) 및 제4 레이어(14)를 이용하여 제1 영상 스트림 데이터(21), 제2 영상 스트림 데이터(22), 제3 영상 스트림 데이터(23) 및 제4 영상 스트림 데이터(24)를 수신하는 경우 제공 받은 영상의 품질이 더 좋은 것을 볼 수 있다.
즉, 사용자 단말은 제1 레이어(11)를 이용하여 제1 영상 스트림 데이터(21)만을 수신하는 경우보다, 상위 레이어까지 이용하여 더 많은 영상 스트림 데이터를 수신하는 경우 보다 높은 품질의 영상을 제공 받을 수 있다.
구체적으로, 스케일러블 영상 코덱 기술로 영상을 제1 영상 스트림 데이터(21), 제2 영상 스트림 데이터(22), 제3 영상 스트림 데이터(23) 및 제4 영상 스트림 데이터(24)를 생성하며 인코딩을 한다. 즉, 제1 영상 스트림 데이터(21), 제2 영상 스트림 데이터(22), 제3 영상 스트림 데이터(23) 및 제4 영상 스트림 데이터(24)를 합한 데이터는 스케일러블 영상 코덱 기술이 영상을 최고 해상도로 인코딩한 데이터와 동일할 수 있다. 제1 영상 스트림 데이터(21)는 제1 영상 스트림 데이터(21) 만으로 영상을 재생할 수 있지만 해상도 등 영상 품질이 떨어지며, 상위 레이어를 이용하여 수신하는 영상 스트림 데이터가 더해질수록 최고 해상도의 영상 품질에 가까워 질 수 있다.
본 발명의 명세서 전반에서 사용되는 "상위 레이어를 이용하여 영상 스트림을 전송 또는 수신한다"고 하는 것은, "상기 상위 레이어의 하위 레이어를 이용하여 영상 스트림을 전송 또는 수신"하는 의미도 포함되는 것으로 해석한다.
즉, 송신 서버(100)가 중계 서버(200)를 통하여 제1 사용자 단말(310)에게 제3 레이어(13)를 이용하여 영상 스트림을 전송한다고 하면, 제1 레이어(11)를 이용하여 전송하는 제1 영상 스트림 데이터(21), 제2 레이어(12)를 이용하여 전송하는 제2 영상 스트림 데이터(22) 및 제3 레이어(13)를 이용하여 전송하는 제3 영상 스트림 데이터(23)를 포함하여 전송한다는 것을 의미한다.
다른 예로, 송신 서버(100)가 중계 서버(200)를 통하여 제1 사용자 단말(310)에게 제4 레이어(14)를 이용하여 영상 스트림을 전송한다고 하면, 제1 레이어(11)를 이용하여 전송하는 제1 영상 스트림 데이터(21), 제2 레이어(12)를 이용하여 전송하는 제2 영상 스트림 데이터(22), 제3 레이어(13)를 이용하여 전송하는 제3 영상 스트림 데이터(23) 및 제4 레이어(14)를 이용하여 전송하는 제4 영상 스트림 데이터(24)를 포함하여 전송한다는 것을 의미한다.
본 발명의 일 실시예에 따른 QoS 보장 영상 스트림 시스템은 사용자가 저화질, 중화질, 고화질 중 어느 하나를 선택하여 영상 스트림을 제공받는 영상 스트리밍 서비스보다는, 상기 설명한 스케일러블 영상 코덱을 이용한 영상 스트림 제공 서비스에 효과적으로 적용될 수 있다.
사용자가 저화질, 중화질, 고화질 중 어느 하나를 선택하여 영상 스트림을 제공받는 영상 스트리밍 서비스는, 사용자가 고화질을 선택한 경우 고화질의 영상 스트림 데이터를 제공하며, 네트워크 환경이 좋지 못한 상황에서는 영상이 끊기는 상황이 발생한다.
그러나, 본 발명의 일 실시예에 따른 QoS 보장 영상 스트림 시스템은 사용자가 영상의 품질을 선택하는 것이 아니라 네트워크 환경을 고려하여 실시간 또는 주기적으로 영상의 품질을 조절하여 영상 스트리밍을 제공하므로, 영상의 품질이 떨어지더라도 영상이 끊기는 상황은 거의 발생하지 않는다.
이를 위하여 본 발명의 일 실시예에 따른 QoS 보장 영상 스트림 시스템은 송신 서버(100)와 중계 서버(200) 사이의 네트워크 상태 정보 및 중계 서버(200)와 각 사용자 단말 간의 네트워크 상태 정보를 종합적으로 고려하여 각 사용자 단말 별로 제공되는 영상의 품질을 조절한다.
이하 도 1 및 도4 내지 6을 참조하여 본 발명의 일 실시예에 따른 QoS 보장 영상 스트림 시스템이 각 사용자 단말에 제공하는 영상의 품질을 조절하여 QoS를 보장하는 영상 스트림을 제공하는 방법을 설명한다.
도 4는 각 사용자 단말이 수신하는 영상 스트림에 관한 일 예를 나타내는 도면이다.
도 1 및 도 4를 참조하면, 중계 서버(200)는 송신 서버(100)로부터 영상 스트림을 수신한다. 중계 서버(200)는 수신된 영상 스트림을 송신 서버(100)에서 설정한 바에 따라서 각각의 사용자 단말에게 특정 레이어를 이용하여 영상 스트림을 전송한다.
송신 서버(100)에서 설정한 바에 따라서 각각의 사용자 단말에게 특정 레이어를 이용하여 영상 스트림을 전송하는 보다 구체적인 방법은 차후 설명한다.
계속하여 도 4를 참조하면, 제1 사용자 단말(310)은 제1 레이어(11)를 이용하여 영상 스트림을 수신한다. 제2 사용자 단말(320)은 제2 레이어(12)를 이용하여 영상 스트림을 수신한다. 제3 사용자 단말(330)은 제3 레이어(13)를 이용하여 영상 스트림을 수신한다.
앞서 설명한 바와 같이 제2 사용자 단말(320)은 제2 레이어(12)를 이용하여 제1 영상 스트림 데이터(21) 및 제2 영상 스트림 데이터(22)를 수신하고, 수신한 제1 영상 스트림 데이터(21) 및 제2 영상 스트림 데이터(22)를 이용하여 영상을 재생하므로 제1 레이어(11)를 이용하여 영상 스트림을 수신한 경우보다 고 품질의 영상을 재생할 수 있다.
마찬가지로, 제3 사용자 단말(330)은 제3 레이어(13)를 이용하여 제1 영상 스트림 데이터(21) 내지 제3 영상 스트림 데이터(23)를 수신하여 영상을 재생하므로, 제1 사용자 단말(310) 및 제2 사용자 단말(320)에서 재생되는 영상의 품질보다 고 품질의 영상을 재생할 수 있다.
도 5는 제1 구간 네트워크(51) 상태 정보를 설명하기 위한 도면이다.
송신 서버(100)는 송신 서버(100)와 중계 서버(200)간 네트워크 상태 정보 및 중계 서버(200)와 각 사용자 단말(310, 320, 330) 간의 네트워크 상태 정보를 종합적으로 고려하여 각 사용자 단말(310, 320, 330) 별로 제공되는 영상의 품질을 조절한다.
도 5를 참조하면, 송신 서버(100)와 중계 서버(200)간 네트워크를 제1 구간 네트워크(51)라 명명한다. 송신 서버(100)는 중계 서버(200)로 영상 스트림을 전송한다. 중계 서버(200)는 송신 서버(100)로 제1 구간 네트워크(51) 상태 정보를 전송한다.
즉, 송신 서버(100)는 중계 서버(200)로부터 제1 구간 네트워크(51) 상태 정보를 수신한다.
구체적으로, 송신 서버(100)는 RTCP(Real Time Transport Protocol)을 이용하여 중계 서버(200)로부터 제1 구간 네트워크(51) 상태 정보를 수신할 수 있다.
제1 구간 네트워크(51) 상태 정보는 제1 구간 네트워크(51)에서의 패킷 로스(Packet Loss), 지터(Jitter) 및 지연(Delay) 중 적어도 어느 하나의 정보를 포함할 수 있다.
또는, 제1 구간 네트워크(51) 상태 정보는 각 사용자 단말(310, 320, 330) 별 가용 대역폭을 산출하기 위해 필요한 정보를 포함할 수 있다.
가용 대역폭을 산출하는 방법은 다양한 방법이 있으며, 다양한 방법은 각각의 장단점이 존재한다. 가용 대역폭을 산출하는 구체적인 방법은 공지된 방법을 이용할 수 있으며, 본 발명이 적용되는 네트워크 환경을 고려하여 설정될 수 있다. 예를 들면, 가용 대역폭은 패킷 로스, 지터 및 지연 정보 중 적어도 어느 하나를 이용하여 산출할 수 있다.
중계 서버(200)는 제1 구간 네트워크(51) 상태 정보를 실시간, 주기적 또는 비 주기적으로 송신 서버(100)로 전송할 수 있다. 중계 서버(200)는 네트워크 상태 변경 가능성, 데이터 송수신 및 데이터 처리의 부하 정도 등을 고려하여 주기적으로 제1 구간 네트워크(51) 상태 정보를 송신 서버(100)로 전송하는 것을 기본적인 설정으로 할 수 있다.
도 6a 및 6b는 제2 구간 네트워크 상태 정보를 설명하기 위한 도면이다.
도 6a을 참조하면, 제2 구간 네트워크(61)는 중계 서버(200)와 사용자 단말 간의 네트워크를 의미한다.
중계 서버(200)는 송신 서버(100)로부터 수신한 영상 스트림을 각 사용자 단말(310, 320, 330)에게 전송하며, 각각의 사용자 단말로부터 제2 구간 네트워크(61) 상태 정보를 수신한다.
예를 들면, 중계 서버(200)는 제1 사용자 단말(310)로부터 중계 서버(200)와 제1 사용자 단말(310) 사이의 네트워크 상태 정보를 수신한다.
중계 서버(200)는 제2 사용자 단말(320)로부터 중계 서버(200)와 제2 사용자 단말(320) 사이의 네트워크 상태 정보를 수신한다.
중계 서버(200)는 제3 사용자 단말(330)로부터 중계 서버(200)와 제3 사용자 단말(330) 사이의 네트워크 상태 정보를 수신한다.
중계 서버(200)가 각각의 사용자 단말인 제1 사용자 단말(310), 제2 사용자 단말(320) 및 제3 사용자 단말(330)로부터 수신한 네트워크 상태 정보들이 제2 구간 네트워크(61) 상태 정보가 된다.
중계 서버(200)는 각각의 사용자 단말로부터 수신한 네트워크 상태 정보를 포함하는 제2 구간 네트워크(61) 상태 정보를 송신 서버(100)로 전송한다.
중계 서버(200)는 각 사용자 단말(310, 320, 330)로부터 실시간, 주기적 또는 비주기적으로 네트워크 상태 정보를 수신할 수 있다. 다만, 중계 서버(200)가 각 사용자 단말(310, 320, 330)로부터 수신한 네트워크 상태 정보를 취합하여 송신 서버(100)로 전송하는 경우, 중계 서버(200)가 제2 구간 네트워크(61) 상태 정보를 취합하기 위한 절차를 수행할 필요성이 있다.
따라서, 중계 서버가 제2 구간 네트워크(61) 상태 정보를 송신 서버(100)로 바이패스(by-pass)하는 경우가 보다 구현이 용이할 수 있다.
중계 서버(200)는 각 사용자 단말(310, 320, 330)로부터 수신한 제2 구간 네트워크(61) 상태 정보를 실시간, 주기적 또는 비주기적으로 송신 서버(100)로 전송할 수 있다.
각 사용자 단말(310, 320, 330)은 중계 서버(200)와 각 사용자 단말(310, 320, 330) 사이의 네트워크 상태 정보를 RTCP(Real Time Transport Protocol)을 이용하여 중계 서버(200)로 전송할 수 있다.
중계 서버(200)도 제2 구간 네트워크(61) 상태 정보를 RTCP를 이용하여 송신 서버(100)로 전송할 수 있다.
다만, 중계 서버(200)는 송신 서버(100)가 전송하는 데이터를 특별한 처리 없이 바이패스(by-pass)하는 형태로 전달할 수 있다. 따라서, 각 사용자 단말(310, 320, 330)에서 측정 가능한 네트워크 상태 정보는 실질적으로 송신 서버(100)와 네트워크 상태 정보를 측정하는 사용자 단말 자신 간의 네트워크 상태 정보가 될 수 있다.
도 6b를 참조하면, 제2 구간 네트워크(61)는 실질적으로 송신 서버(100)와 각 사용자 단말 사이의 네트워크가 될 수 있는 것을 볼 수 있다. 다만, 중계 서버가 송신 서버(100)에서 전송하는 데이터를 바이패스하는 형태로 전달하지 않고 가공 이나 처리를 하는 경우에는 제2 구간 네트워크(61)는 도 6a와 같을 수 있다.
도 6a와 6b에서 제2 구간 네트워크(61) 상태 정보는 각 사용자 단말이 중계 서버를 통하여 송신 서버로 전달하는 네트워크 상태 정보를 포함한다. 즉, 도 6b에서 중계 서버(200)는 제2 구간 네트워크(61) 상태 정보 중 제1 사용자 단말(310)로부터 수신한 제1 사용자 단말(310)과 송신 서버(100)간 네트워크 상태 정보인 제2 구간 네트워크(61) 상태 정보를 바이패스로 송신 서버(100)로 전송한다. 또한, 중계 서버(200)는 제2 구간 네트워크(61) 상태 정보 중 제2 사용자 단말(320)로부터 수신한 제2 사용자 단말(320)과 송신 서버(100)간 네트워크 상태 정보를 바이패스로 송신 서버(100)로 전송한다. 또한, 중계 서버(200)는 제2 구간 네트워크(61) 상태 정보 중 제3 사용자 단말(330)로부터 수신한 제3 사용자 단말(330)과 송신 서버(100)간 네트워크 상태 정보를 바이패스로 송신 서버(100)로 전송한다.
제2 구간 네트워크(61) 상태 정보는 제2 구간 네트워크(61)에서의 패킷 로스, 지터 및 지연 중 적어도 어느 하나의 정보를 포함할 수 있다. 즉, 도 6에서 제2 구간 네트워크(61) 상태 정보는 중계 서버(200)와 제1 사용자 단말(310) 간 네트워크에서의 패킷 로스, 지터 및 지연 중 적어도 어느 하나의 정보를 포함한다. 또한, 제2 구간 네트워크(61) 상태 정보는 중계 서버(200)와 제2 사용자 단말(320) 간 네트워크에서의 패킷 로스, 지터 및 지연 중 적어도 어느 하나의 정보를 포함한다. 또한, 제2 구간 네트워크(61) 상태 정보는 중계 서버(200)와 제3 사용자 단말(330) 간 네트워크에서의 패킷 로스, 지터 및 지연 중 적어도 어느 하나의 정보를 포함한다.
제2 구간 네트워크(61) 상태 정보는 각 사용자 단말(310, 320, 330) 별 가용 대역폭을 산출하기 위해 필요한 정보를 포함할 수 있다.
앞서 설명한 바와 같이 가용 대역폭을 산출하는 방법은 다양한 방법이 있으며, 공지된 방법을 이용할 수 있다. 또는, 본 발명이 적용되는 네트워크 환경을 고려하여 설정될 수 있다. 예를 들면, 가용 대역폭은 제1 구간 네트워크(51)에서의 지터 정보와 제2 구간 네트워크(61)에서의 지터 정보를 이용하여 산출할 수 있다.
제2 구간 네트워크(61) 상태 정보에는 네트워크 상태 정보를 중계 서버(200)로 전송한 사용자 단말의 식별 정보를 포함할 수 있다. 송신 서버(100)는 식별 정보를 이용하여 특정 네트워크 상태 정보를 전송한 대상이 어떠한 사용자 단말인지 알 수 있다.
식별 정보는 예를 들면 유니크 키(Unique Key)를 사용한 정보가 될 수 있다. 다른 예를 들면, 식별 정보는 IP 주소나 포트(Port)와 같이 영상 스트림을 수신하는 네트워크 주소를 이용한 정보가 될 수도 있다.
송신 서버(100)는 제1 구간 네트워크(51) 상태 정보 및 제2 구간 네트워크(61) 상태 정보를 이용하여 사용자 단말 각각이 수신하는 영상의 품질을 조절한다.
송신 서버(100)는 사용자 단말 각각이 수신하는 영상의 품질을 조절하기 위하여 각 레이어 별로 전송되는 영상 스트림의 품질을 조절할 수 있다.
본 발명의 일 실시예에 따른 QoS 보장 영상 스트림 시스템 및 송신 서버(100)에 관한 보다 자세한 설명은 본 발명의 다른 실시예에 따른 QoS 보장 영상 스트림 방법에서 설명한다.
도 7 내지 10을 참조하여 본 발명의 다른 실시예에 따른 QoS 보장 영상 스트림 방법을 설명한다.
도 7 내지 10을 참조하여 설명한 본 발명의 다른 실시예에 따른 QoS 보장 영상 스트림 방법에 관한 내용은 본 발명의 일 실시예에 따른 QoS 보장 영상 스트림 시스템 및 송신 서버(100)에 적용될 수 있다. 또한, 도 1 내지 6을 참조하여 설명한 본 발명의 일 실시예에 따른 QoS 보장 영상 스트림 시스템 및 송신 서버(100)에 관한 내용은 본 발명의 다른 실시예에 따른 QoS 보장 영상 스트림 방법에 적용될 수 있다.
도 7은 본 발명의 다른 실시예에 따른 QoS 보장 영상 스트림 방법을 나타내는 신호 흐름도이다.
도 7을 참조하면, 송신 서버(100)는 중계 서버(200)로 영상 스트림을 전송한다(S705).
송신 서버(100)는 중계 서버(200)와 송신 서버(100)간 네트워크 상태 정보인 제1 구간 네트워크(51) 상태 정보를 중계 서버(200)로부터 수신한다(S710 단계).
사용자 단말은 복수 개가 존재할 수 있다. 도 7에서는 세 개의 사용자 단말을 예로 들고 있다.
사용자 단말은 송신 서버(100)가 전송한 영상 스트림을 중계 서버(200)를 통하여 수신할 수 있다.
제1 사용자 단말(310)은 제1 레이어(11)를 이용하여 영상 스트림을 수신할 수 있다(S715). 즉, 제1 사용자 단말(310)은 제1 레이어(11)를 이용하여 제1 영상 스트림을 수신할 수 있다.
제2 사용자 단말(320)은 제2 레이어(12)를 이용하여 영상 스트림을 수신할 수 있다(S720). 즉, 제2 사용자 단말(320)은 제1 레이어(11)를 이용하여 제1 영상 스트림 데이터(21) 및 제2 레이어(12)를 이용하여 제2 영상 스트림 데이터(22)를 수신할 수 있다.
제3 사용자 단말(330)은 제3 레이어(13)를 이용하여 영상 스트림을 수신할 수 있다(S725). 즉, 제3 사용자 단말(330)은 제1 레이어(11)를 이용하여 제1 영상 스트림 데이터(21), 제2 레이어(12)를 이용하여 제2 영상 스트림 데이터(22) 및 제3 레이어(13)를 이용하여 제3 영상 스트림 데이터(23)를 수신할 수 있다.
제1 사용자 단말(310) 보다 제2 사용자 단말(320) 및 제3 사용자 단말(330)이 재생하는 영상이 고 품질이다. 제2 사용자 단말(320) 보다 제3 사용자 단말(330)이 재생하는 영상이 고품질이다.
제1 사용자 단말(310)은 제1 사용자 단말(310)과 중계 서버(200)간의 네트워크 상태 정보를 중계 서버(200)로 전송한다(S730).
제2 사용자 단말(320)은 제2 사용자 단말(320)과 중계 서버(200)간의 네트워크 상태 정보를 중계 서버(200)로 전송한다(S735).
제3 사용자 단말(330)은 제3 사용자 단말(330)과 중계 서버(200)간의 네트워크 상태 정보를 중계 서버(200)로 전송한다(S740).
중계 서버(200)는 S730, S735, S740 단계에서 각 사용자 단말(310, 320, 330)로부터 수신한 제2 구간 네트워크(61) 상태 정보를 송신 서버(100)로 전송한다(S745).
구체적으로, 중계 서버(200)는 S730, S735, S740 단계에서 각 사용자 단말(310, 320, 330)로부터 수신한 제2 구간 네트워크(61) 상태 정보를 취합하여 주기적으로 송신 서버(100)로 전송할 수 있다.
바람직하게는, 중계 서버(200)는 취합 등의 처리를 수행하지 않고 각 사용자 단말(310, 320, 330)로부터 제2 구간 네트워크 (61) 상태 정보를 수신하면 바로 바이패스로 송신 서버(100)로 전송할 수 있다.
송신 서버(100)는 제1 구간 네트워크(51) 상태 정보 및 제2 구간 네트워크(61) 상태 정보를 이용하여 레이어 별로 영상 스트림의 품질을 조절하여 각 사용자 단말(310, 320, 330)들이 QoS가 보장되면서 네트워크 상황에 최적화된 품질의 영상 스트림을 제공 받을 수 있도록 한다(S750).
송신 서버(100)는 제1 구간 네트워크(51) 상태 정보 및 제2 구간 네트워크(61) 상태 정보를 주기적(또는 비주기적)으로 수신할 수 있다. 송신 서버(100)는 주기적으로 수신한 제1 구간 네트워크(51) 상태 정보 및 제2 구간 네트워크(61) 상태 정보를 이용하여 주기적으로 레이어 별로 영상 스트림의 품질을 조절하여 각 사용자 단말(310, 320, 330)들이 QoS가 보장된 영상 스트림을 제공 받을 수 있도록 할 수 있다.
구체적으로, 송신 서버(100)는 제1 구간 네트워크(51) 상태 정보 및 제2 구간 네트워크(61) 상태 정보를 이용하여 각 사용자 단말(310, 320, 330) 별 가용 대역폭을 산출하고, 산출된 가용 대역폭을 이용하여 레이어 별로 영상 스트림의 품질을 조절할 수 있다. 예를 들면 송신 서버(100)는 특정 사용자 단말의 가용 대역폭이 특정 사용자 단말이 현재 사용하고 대역폭보다 큰 경우에는 상기 사용자 단말은 보다 높은 품질의 영상을 제공받을 여력이 있는 것으로 보아, 보다 고품질의 영상 스트림 데이터를 제공할 수 있다.
또는, 송신 서버(100)는 제1 구간 네트워크(51) 상태 정보 및 제2 구간 네트워크(61) 상태 정보에 포함된 패킷 로스, 지터 및 지연 정보를 이용하여 레이어 별로 영상 스트림의 품질을 조절할 수 있다. 예를 들면, 송신 서버(100)는 특정 사용자 단말의 패킷 로스, 지터 또는 지연 정보가 높은 경우 특정 사용자 단말의 현재 네트워크 상황이 좋지 못한 것으로 보아, 보다 저품질의 영상 스트림 데이터를 제공하여 영상을 끊기지 않게 할 수 있다.
도 8 내지 10은 송신 서버(100)가 레이어 별로 영상 스트림의 품질을 조절하는 예를 설명하기 위한 도면이다.
구체적으로 도 8 내지 10은 사용자 단말들 각각의 가용 대역폭을 산출하고 산출된 가용 대역폭을 이용하여 레이어 별로 영상 스트림의 품질을 조절하는 예를 설명한다.
도 8을 참조하면, 복수 개의 사용자 단말(300)은 제1 사용자 단말(310)부터 제9 사용자 단말(390)이 존재한다.
송신 서버(100)는 제1 구간 네트워크(51) 상태 정보 및 제2 구간 네트워크(61) 상태 정보를 수신하고, 수신된 네트워크 상태 정보를 이용하여 제1 사용자 단말(310) 내지 제9 사용자 단말(390) 각각의 가용 대역폭을 산출할 수 있다.
또한, 송신 서버(100)는 수신된 제1 구간 네트워크(51) 상태 정보 및 제2 구간 네트워크(61) 상태 정보를 이용하여 각 사용자 단말 별 현재 사용하고 있는 레이어 및 현재 레이어가 사용하고 있는 대역폭에 관한 정보도 알 수 있다. 다만, 각 사용자 단말 별 현재 사용하고 있는 레이어 및 현재 레이어가 사용하고 있는 대역폭은 송신 서버(100)가 조절하고 결정하는 것인 바, 반드시 제1 구간 네트워크(51) 상태 정보 및 제2 구간 네트워크(61) 상태 정보를 이용하여 알 수 있는 것은 아니다.
계속하여 도 8을 참조하면, 제1 사용자 단말(310), 제2 사용자 단말(320), 제3 사용자 단말(330) 및 제8 사용자 단말(380)은 제3 레이어(13)를 이용하여 영상 스트림을 제공받고 있다.
사용자 단말이 제3 레이어(13)를 이용하여 영상 스트림을 제공 받는 것은 제1 레이어(11) 및 제2 레이어(12)를 이용한 제1 영상 스트림 데이터(21) 및 제2 영상 스트림 데이터(22)도 함께 수신하는 것을 의미하는 바, 가장 많은 대역폭을 사용하며 가장 고품질의 영상을 제공 받을 수 있다.
제4 사용자 단말(340), 제5 사용자 단말(350) 및 제6 사용자 단말(360)은 제2 레이어(12)를 이용하여 영상 스트림을 제공받고 있다.
제7 사용자 단말(370) 및 제9 사용자 단말(390)은 제1 레이어(11)를 이용하여 영상 스트림을 제공받고 있다.
송신 서버(100)가 제1 구간 네트워크(51) 정보 및 제2 구간 네트워크(61) 정보를 이용하여 제1 사용자 단말(310)부터 제9 사용자 단말(390)까지 기 설정된 바에 따라 가용 대역폭을 산출한 값이 그래프에 표시되어 있다.
송신 서버(100)는 특정 레이어를 이용하여 영상 스트림을 수신하는 사용자 단말 중 가장 가용 대역폭이 낮은 사용자 단말을 기준으로 상기 특정 레이어를 이용하여 제공하는 영상 스트림의 전송률 등 영상 품질을 조절할 수 있다.
도 9는 송신 서버(100)가 레이어 별로 영상 품질을 조절하는 일 예를 설명하기 위한 도면이다.
즉, 도 8을 참조하면, 제3 레이어(13)를 이용하여 영상 스트림을 수신하는 사용자 단말들은 모두 가용 대역폭에 여유가 있는 것을 알 수 있다. 또한, 제8 사용자 단말(380)이 제3 레이어(13)를 이용하여 영상 스트림을 수신하는 사용자 단말들 중 가장 가용 대역폭이 낮은 사용자 단말인 것을 알 수 있다.
따라서, 도 9를 참조하면, 송신 서버(100)는 제8 사용자 단말(380)의 가용 대역폭을 기준으로 제3 레이어(13)를 이용하여 제공하는 영상 스트림의 전송률을 상향 조절하여 제3 레이어(13)를 이용하는 사용자 단말들이 보다 고 품질의 영상 품질을 수신할 수 있도록 할 수 있다.
도 8을 참조하면, 제2 레이어(12)를 이용하여 영상 스트림을 수신하는 사용자 단말들 중에서는 제4 사용자 단말(340)의 가용 대역폭이 현재 제2 레이어(12)를 이용하여 영상 스트림을 수신하기에 부족한 것을 볼 수 있다.
따라서, 도 9를 참조하면, 송신 서버(100)는 제2 레이어(12)를 이용하여 영상 스트림을 수신하는 사용자 단말들 중에서 가장 가용 대역폭이 낮은 제4 사용자 단말(340)을 기준으로 제2 레이어(12)를 이용하여 제공하는 영상 스트림의 전송률을 하향 조절하여 제2 레이어(12)를 이용하는 사용자 단말 모두가 QoS가 보장되는 환경에서 영상 스트림을 수신하도록 할 수 있다.
도 8을 참조하면, 제1 레이어(11)를 이용하여 영상 스트림을 수신하는 사용자 단말들 중에서는 제9 사용자 단말(390)의 가용 대역폭이 가장 낮다. 따라서, 도 9를 참조하면, 송신 서버(100)는 제9 사용자 단말(390)을 기준으로 제1 레이어(11)를 이용하여 제공하는 영상 스트림의 전송률을 하향 조절하여 QoS가 보장되는 환경에서 영상 스트림을 수신하도록 할 수 있다.
도 10은 송신 서버(100)가 레이어 별로 영상 품질을 조절하는 다른 예를 설명하기 위한 도면이다.
송신 서버(100)는 특정 레이어를 이용하여 영상 스트림을 수신하는 사용자 단말 중 가장 가용 대역폭이 낮은 사용자 단말을 기준으로 상기 특정 레이어를 이용하여 제공하는 영상 스트림의 전송률 등 영상 품질을 조절한다. 다만, 송신 서버(100)는 상기 가장 가용 대역폭이 낮은 사용자 단말이 기 설정된 수준 이하인 경우 상기 가장 가용 대역폭이 낮은 사용자 단말이 이용하는 레이어를 하위 레이어로 변경한다. 그리고, 송신 서버(100)는 그 다음으로 가용 대역폭이 낮은 사용자 단말을 기준으로 상기 특정 레이어를 이용하여 제공하는 영상 스트림의 전송률 등 영상 품질을 조절할 수 있다.
만약, 상기 그 다음으로 가용 대역폭이 낮은 사용자 단말도 기 설정된 수준 이하인 경우에는 송신 서버(100)는 상기 그 다음으로 가용 대역폭이 낮은 사용자 단말이 이용하는 레이어도 하위 레이어로 변경할 수 있다. 그리고 송신 서버(100)는 나머지 사용자 단말들 중 가용 대역폭이 가장 낮은 사용자 단말의 가용 대역폭을 기준으로 상기 특정 레이어를 이용하여 제공하는 영상 스트림의 전송률 등 영상 품질을 조절할 수 있다.
이러한 방식을 사용하면, 네트워크 상태가 좋지 못하거나 악화된 사용자 단말을 기준으로 전체적으로 품질이 낮아지는 현상을 방지할 수 있다.
도 8과 함께 도 10을 참조하여 구체적인 예를 설명하면, 제2 레이어(12)를 이용하는 제4 사용자 단말(340)을 기준으로 제2 레이어(12)를 이용하여 제공하는 영상 스트림의 전송률을 하향 조절하는 경우, QoS는 보장할 수 있으나, 가용 대역폭에 여유가 있는 제5 사용자 단말(350) 및 제6 사용자 단말(360)은 대역폭을 충분히 사용하지 못하고 저 품질의 영상을 제공받게 된다. 따라서, 송신 서버(100)는 제4 사용자 단말(340)이 이용하는 레이어를 제1 레이어(11)로 변경할 수 있다. 그리고, 송신 서버(100)는 제6 사용자를 기준으로 제2 레이어(12)를 이용하여 제공하는 영상 스트림의 전송률을 상향 조절할 수 있다.
도 10을 참조하여 설명한 바와 유사하게, 송신 서버(100)는 가용 대역폭이 기 설정된 수준 이상인 사용자 단말이 존재하는 경우, 해당 사용자 단말이 이용하는 레이어를 상위 레이어로 변경하여 고품질의 영상을 제공받도록 할 수 있다.
기 설정된 수준은 레이어 별로 영상 스트림에 사용하는 대역폭, 레이어 별로 영상 스트림에 사용하는 대역폭의 갭(Gap) 등을 고려하여 설정될 수 있다. 또한, 기 설정된 수준은 레이어 별로 영상 스트림에 사용하는 대역폭이 변경됨에 따라 유동적으로 변경될 수 있다.
송신 서버(100)는 반드시 가용 대역폭을 산출하여 레이어 별로 영상 스트림의 품질을 조절할 필요성이 있는 것은 아니다. 송신 서버(100)는 패킷 로스, 지터 및 지연 정보 등 네트워크 상태를 알 수 있는 각 지표에 대하여 임계값을 설정하고 영상 스트림을 위한 네트워크 상태가 임계값 보다 낮게 유지되도록 영상 품질을 조절할 수 있다.
영상 품질을 조절한다는 것에는 전송률을 조절하는 의미를 포함한다.
또한, 송신 서버(100)는 가용 대역폭이 아니라 패킷 로스, 지터 및 지연 중 적어도 어느 하나의 지표를 이용하여 특정 함수를 설정하고, 설정된 특정 함수의 값이 기 설정된 임계값보다 낮게 되거나 최소화 되도록 레이어 별로 전송률을 조절하는 등 레이어 별로 영상 품질을 조절할 수도 있다. 특정 함수는 네트워크 상황이나 종류 등에 따라서 상이하게 설정될 수 있고 변경될 수 있다.
송신 서버(100)가 특정 함수를 설정하고 설정된 특정 함수를 이용하여 레이어 별로 영상 품질을 조절하는 것은 도 7 내지 9를 통하여 설명한 가용 대역폭을 산출하고 산출된 가용 대역폭을 이용하여 레이어 별로 영상 품질을 조절하는 내용을 동일 또는 유사하게 이용할 수 있다.
송신 서버(100)가 레이어 별로 영상 품질을 조절하는 또 다른 예를 들면, 도 8과 같은 상황에서 사용자 단말 중 특정 사용자 단말이 CEO 회의 중인 단말 등 기 설정된 기준에 따라 우선적으로 고려 대상인 중요한 단말인 경우에는, 상기 중요한 단말을 기준으로 QoS가 보장되면서 최대한 고 품질의 영상 스트림을 제공 받을 수 있도록 레이어 별로 영상 품질을 조절할 수 있다.
송신 서버(100)는 레이어 별로 영상 품질을 조절한 정보를 중계 서버(200)를 통하여 각 사용자 단말로 전송할 수 있다.
예를 들면, 송신 서버(100)는 각각의 패킷에 해당 패킷의 수신자 정보를 포함하여 전송할 수 있다. 구체적으로 제1 레이어(11) 내지 제3 레이어(13)를 모두 이용하여 영상 스트림 데이터를 수신하는 사용자 단말 A, 제1 레이어(11)와 제2 레이어(12)를 이용하여 영상 스트림 데이터를 수신하는 사용자 단말 B 및 제1 레이어(11)를 이용하여 영상 스트림 데이터를 수신하는 사용자 단말 C가 존재하는 경우를 가정하여 설명한다.
상기 가정한 경우에서, 송신 서버(100)는 영상 품질을 조절한 영상 스트림 데이터 중 제1 레이어(11)를 이용하는 제1 영상 스트림 데이터(21)의 패킷 헤더에 수신자 정보로 사용자 단말 A, B, C를 모두 넣는다. 또한, 송신 서버(100)는 영상 품질을 조절한 영상 스트림 데이터 중 제2 레이어(12)를 이용하는 제2 영상 스트림 데이터(22)의 패킷 헤더에 수신자 정보로 사용자 단말 A와 B를 넣는다. 또한, 송신 서버(100)는 영상 품질을 조절한 영상 스트림 데이터 중 제3 레이어(13)를 이용하는 제3 영상 스트림 데이터(23)의 패킷 헤더에 수신자 정보로 사용자 단말 A를 넣는다. 이렇게 패킷 헤더에 수신자 정보를 넣어서 영상 스트림을 중계 서버(200)로 전송할 수 있다.
다른 방법으로는, 송신 서버(100)는 영상 스트림 데이터의 패킷 헤더에 해당 패킷의 레이어 정보를 판단할 수 있는 값을 넣는다. 그리고, 송신 서버(100)는 중계 서버(200)로 별도의 메시지를 전송하여 사용자 단말 A는 제1 레이어(11) 내지 제3 레이어(13)를 모두 이용하여 영상 스트림 데이터를 수신하고, 사용자 단말 B는 제1 레이어(11)와 제2 레이어(12)를 이용하여 영상 스트림 데이터를 수신하고, 사용자 단말 C는 제1 레이어(11)를 이용하여 영상 스트림 데이터를 수신한다는 정보를 알려준다.
중계 서버(200)는 수신한 영상 스트림 데이터의 패킷의 레이어를 판단할 수 있기 때문에 별로의 메시지에 포함된 정보에 따라서 각 사용자 단말에게 적절한 레이어를 중계할 수 있다.
또는, 송신 서버(100)는 별도로 레이어 정보를 판단하기 위한 값을 패킷에 포함시키지 않고 중계 서버(200)가 영상 스트림 데이터를 분석하여 해당 패킷의 레이어 정보를 판단할 수도 있다.
도 11은 본 발명의 또 다른 실시예에 따른 송신 서버(100)를 나타내는 블록도이다.
도 11을 참조하면, 송신 서버(100)는 전송부(110), 제1 수신부(120), 제2 수신부(130) 및 조절부(140)를 포함할 수 있다.
전송부(110)는 중계 서버(200)로 영상 스트림을 전송한다.
전송부(110)는 조절부(140)에서 레이어 별로 영상 품질이 조절된 영상 스트림도 중계 서버(200)로 전송한다.
제1 수신부(120)는 제1 구간의 네트워크 정보를 수신할 수 있다. 제2 수신부(130)는 제2 구간의 네트워크 정보를 수신할 수 있다.
제1 구간 네트워크(51) 정보 및 제2 구간 네트워크(61) 정보는 모두 중계 서버(200)로부터 수신할 수 있는바, 제1 수신부(120) 및 제2 수신부(130)는 하나의 수신부에 의하여 처리될 수도 있다.
조절부(140)는 제1 구간 네트워크(51) 정보 및 제2 구간 네트워크(61) 정보를 이용하여 레이어 별로 전송률 등을 조절하여 영상 품질을 조절하여 QoS를 보장할 수 있다.
도 1 내지 11을 참조하여 설명한 본 발명의 일 실시예에 따른 송신 서버(100)는 반드시 서버인 것은 아니며, 단말(Terminal)일 수도 있다.
예를 들면, P2P(Peer to Peer) 방식의 네트워크 연결에서는 송신 서버(100)의 역할은 특정 단말(Terminal)이 수행할 수도 있다.
도 11의 각 구성요소는 소프트웨어(software) 또는, FPGA(field-programmable gate array)나 ASIC(application-specific integrated circuit)과 같은 하드웨어(hardware)를 의미할 수 있다. 그렇지만 상기 구성요소들은 소프트웨어 또는 하드웨어에 한정되는 의미는 아니며, 어드레싱(addressing)할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 실행시키도록 구성될 수도 있다. 상기 구성요소들 안에서 제공되는 기능은 더 세분화된 구성요소에 의하여 구현될 수 있으며, 복수의 구성요소들을 합하여 특정한 기능을 수행하는 하나의 구성요소로 구현할 수도 있다.
이상 첨부된 도면을 참조하여 본 발명의 실시예들을 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다.

Claims (24)

  1. 송신 서버가 복수 개의 레이어(Layer)마다 서로 다른 영상 스트림 데이터를 포함하는 영상 스트림을 중계 서버로 전송하는 단계;
    상기 송신 서버가 상기 중계 서버와 상기 송신 서버 간의 네트워크 상태에 관한 정보인 제1 구간 네트워크 상태 정보를 상기 중계 서버로부터 수신하는 단계;
    상기 송신 서버가 상기 복수의 사용자 단말 각각과 상기 송신 서버 간의 네트워크 상태에 관한 정보인 제2 구간 네트워크 상태 정보를 수신하는 단계; 및
    상기 송신 서버가 상기 제1 구간의 네트워크 상태 정보 및 상기 제2 구간의 네트워크 상태 정보를 이용하여 상기 중계 서버를 통하여 상기 복수의 사용자 단말 각각에게 전송되는 영상 스트림의 품질을 상기 레이어 별로 조절하는 단계를 포함하되,
    특정 레이어를 이용하여 영상 스트림을 수신하는 사용자 단말 중 가용 대역폭이 가장 낮은 사용자 단말의 가용 대역폭을 기반으로 상기 특정 레이어를 이용하여 전송하는 영상 스트림의 품질을 조절하는, QoS 보장 영상 스트림 방법.
  2. 제1 항에 있어서,
    상기 제1 구간 네트워크 상태 정보를 이용하여 상기 사용자 단말 별로 가용 대역폭(Available Bandwidth)을 산출하는, QoS 보장 영상 스트림 방법.
  3. 제1 항에 있어서,
    상기 제1 구간 네트워크 상태 정보는 패킷 로스(Packet Loss), 지터(Jitter) 및 지연(Delay) 중 적어도 어느 하나의 정보를 포함하는, QoS 보장 영상 스트림 방법.
  4. 제1 항에 있어서,
    상기 제2 구간 네트워크 상태 정보를 수신하는 단계는,
    상기 복수의 사용자 단말 각각이 전송한 상기 제2 구간 네트워크 상태 정보를 상기 중계 서버를 통하여 수신하는, QoS 보장 영상 스트림 방법.
  5. 제1 항에 있어서,
    상기 영상 스트림을 중계 서버로 전송하는 단계는,
    상기 송신 서버가 스케일러블 영상 코덱 기술을 이용하여 상기 복수 개의 레이어 마다 서로 다른 영상 스트림 데이터가 포함되도록 생성한 영상 스트림을 전송하는, QoS 보장 영상 스트림 방법.
  6. 제1 항에 있어서,
    상기 제2 구간 네트워크 상태 정보는 상기 제2 구간 네트워크 상태 정보에 포함되는 네트워크 정보를 전송한 사용자 단말의 식별 정보를 포함하고,
    상기 제2 구간 네트워크 상태 정보를 이용하여 상기 사용자 단말 별로 가용 대역폭(Available Bandwidth)을 산출하는, QoS 보장 영상 스트림 방법.
  7. 제1 항에 있어서,
    상기 제2 구간 네트워크 상태 정보는 패킷 로스(Packet Loss), 지터(Jitter) 및 지연(Delay) 중 적어도 어느 하나의 정보 및 상기 제2 구간 네트워크 상태 정보에 포함되는 네트워크 정보를 전송한 사용자 단말의 식별 정보를 포함하는, QoS 보장 영상 스트림 방법.
  8. 제1 항에 있어서,
    상기 복수 개의 레이어는 제1 레이어 및 제2 레이어를 포함하며,
    상기 영상 스트림의 품질을 상기 레이어 별로 조절하는 단계는,
    상기 제2 레이어를 이용하여 영상 스트림을 수신하는 사용자 단말 중 가용 대역폭이 가장 낮은 사용자 단말의 가용 대역폭을 기반으로 상기 제2 레이어를 이용하여 전송하는 영상 스트림의 품질을 조절하는 단계를 더 포함하는, QoS 보장 영상 스트림 방법.
  9. 제8 항에 있어서,
    상기 영상 스트림의 품질을 상기 레이어 별로 조절하는 단계는,
    상기 가용 대역폭이 가장 낮은 사용자 단말을 포함하여 상기 제2 레이어를 이용하여 영상 스트림을 수신하는 사용자 단말 중 가용 대역폭이 기 설정된 가용 대역폭 기준 이하인 사용자 단말에 전송되는 영상 스트림을 상기 제1 레이어로 변경하는 단계를 더 포함하는, QoS 보장 영상 스트림 방법.
  10. 제9 항에 있어서,
    상기 영상 스트림의 품질을 상기 레이어 별로 조절하는 단계는,
    상기 제2 레이어를 이용하여 영상 스트림을 수신하는 사용자 단말 중 상기 기 설정된 가용 대역폭 기준 이하인 사용자 단말을 제외하고 가장 가용 대역폭이 낮은 사용자 단말의 가용 대역폭을 기반으로 상기 제2 레이어를 이용하여 전송하는 영상 스트림의 품질을 조절하는 단계를 더 포함하는, QoS 보장 영상 스트림 방법.
  11. 제9 항에 있어서,
    상기 영상 스트림의 품질을 상기 레이어 별로 조절하는 단계는,
    상기 기 설정된 가용 대역폭 기준 이하인 사용자 단말 중에서 상기 기 설정된 중요 단말이 포함된 경우, 상기 기 설정된 중요 단말의 가용 대역폭을 기반으로 상기 제2 레이어를 이용하여 전송하는 영상 스트림의 품질을 조절하는 단계를 더 포함하는, QoS 보장 영상 스트림 방법.
  12. 제1 항에 있어서,
    상기 제1 구간의 네트워크 상태 정보 및 제2 구간의 네트워크 상태 정보는 패킷 로스(Packet Loss), 지터(Jitter) 및 지연(Delay) 중 적어도 어느 하나를 포함하며,
    상기 영상 스트림의 품질을 상기 레이어 별로 조절하는 단계는, 상기 패킷 로스(Packet Loss), 지터(Jitter) 및 지연(Delay) 중 적어도 어느 하나의 수치 변동을 기반으로 상기 레이어 별로 영상 스트림 품질을 조절하는 단계를 더 포함하는, QoS 보장 영상 스트림 방법.
  13. 복수 개의 레이어(Layer)마다 서로 다른 영상 스트림 데이터를 포함하는 영상 스트림을 중계 서버로 전송하는 전송부;
    상기 중계 서버와 송신 서버 간의 네트워크 상태에 관한 정보인 제1 구간 네트워크 상태 정보를 상기 중계 서버로부터 수신하는 제1 수신부;
    복수의 사용자 단말 각각과 상기 송신 서버 간의 네트워크 상태에 관한 정보인 제2 구간 네트워크 상태 정보를 수신하는 제2 수신부; 및
    상기 제1 구간의 네트워크 상태 정보 및 상기 제2 구간의 네트워크 상태 정보를 이용하여 상기 중계 서버를 통하여 상기 복수의 사용자 단말 각각에게 전송되는 영상 스트림의 품질을 상기 레이어 별로 조절하는 조절부를 포함하되,
    특정 레이어를 이용하여 영상 스트림을 수신하는 사용자 단말 중 가용 대역폭이 가장 낮은 사용자 단말의 가용 대역폭을 기반으로 상기 특정 레이어를 이용하여 전송하는 영상 스트림의 품질을 조절하는, 송신 서버.
  14. 제13 항에 있어서,
    상기 제1 구간 네트워크 상태 정보는 패킷 로스(Packet Loss), 지터(Jitter) 및 지연(Delay) 중 적어도 어느 하나의 정보를 포함하고,
    상기 제2 구간 네트워크 상태 정보는 패킷 로스(Packet Loss), 지터(Jitter) 및 지연(Delay) 중 적어도 어느 하나의 정보 및 상기 제2 구간 네트워크 상태 정보에 포함되는 네트워크 정보를 전송한 사용자 단말의 식별 정보를 포함하는, 송신 서버.
  15. 제14 항에 있어서,
    상기 조절부는, 상기 패킷 로스(Packet Loss), 지터(Jitter) 및 지연(Delay) 중 적어도 어느 하나의 수치 변동을 기반으로 상기 레이어 별로 영상 스트림 품질을 조절하는 것인, 송신 서버.
  16. 제13 항에 있어서,
    상기 전송부는,
    상기 송신 서버가 스케일러블 영상 코덱 기술을 이용하여 상기 복수 개의 레이어 마다 서로 다른 영상 스트림 데이터가 포함되도록 생성한 영상 스트림을 전송하는, 송신 서버.
  17. 제13 항에 있어서,
    상기 복수 개의 레이어는 제1 레이어 및 제2 레이어를 포함하며,
    상기 조절부는,
    상기 제2 레이어를 이용하여 영상 스트림을 수신하는 사용자 단말 중 가용 대역폭이 가장 낮은 사용자 단말의 가용 대역폭을 기반으로 상기 제2 레이어를 이용하여 전송하는 영상 스트림의 품질을 조절하는, 송신 서버.
  18. 제17 항에 있어서,
    상기 조절부는,
    상기 가용 대역폭이 가장 낮은 사용자 단말을 포함하여 상기 제2 레이어를 이용하여 영상 스트림을 수신하는 사용자 단말 중 가용 대역폭이 기 설정된 가용 대역폭 기준 이하인 사용자 단말에 전송되는 영상 스트림을 상기 제1 레이어로 변경하는, 송신 서버.
  19. 제18 항에 있어서,
    상기 조절부는,
    상기 제2 레이어를 이용하여 영상 스트림을 수신하는 사용자 단말 중 상기 기 설정된 가용 대역폭 기준 이하인 사용자 단말을 제외하고 가장 가용 대역폭이 낮은 사용자 단말의 가용 대역폭을 기반으로 상기 제2 레이어를 이용하여 전송하는 영상 스트림의 품질을 조절하는, 송신 서버.
  20. 복수 개의 레이어(Layer)마다 서로 다른 영상 스트림 데이터를 포함하는 영상 스트림을 중계 서버로 전송하는 송신 서버;
    상기 송신 서버와의 네트워크 상태에 관한 정보인 제1 구간 네트워크 상태 정보를 상기 송신 서버로 전송하는 중계 서버; 및
    상기 송신 서버와의 네트워크 상태에 관한 정보인 제2 구간 네트워크 상태 정보를 상기 중계 서버를 통하여 상기 송신 서버로 전송하는 복수 개의 사용자 단말을 포함하되,
    상기 송신 서버는,
    상기 제1 구간의 네트워크 상태 정보 및 상기 제2 구간의 네트워크 상태 정보를 이용하여 상기 중계 서버를 통하여 상기 복수 개의 사용자 단말 각각에게 전송되는 영상 스트림의 품질을 상기 레이어 별로 조절하되,
    특정 레이어를 이용하여 영상 스트림을 수신하는 사용자 단말 중 가용 대역폭이 가장 낮은 사용자 단말의 가용 대역폭을 기반으로 상기 특정 레이어를 이용하여 전송하는 영상 스트림의 품질을 조절하는, QoS 보장 영상 스트림 시스템.
  21. 송신 서버가 복수 개의 레이어(Layer)마다 서로 다른 영상 스트림 데이터를 포함하는 영상 스트림을 중계 서버로 전송하는 단계;
    상기 송신 서버가 상기 중계 서버와 상기 송신 서버 간의 네트워크 상태에 관한 정보인 제1 구간 네트워크 상태 정보를 상기 중계 서버로부터 수신하는 단계;
    상기 송신 서버가 상기 복수의 사용자 단말 각각과 상기 중계 서버 간의 네트워크 상태에 관한 정보인 제2 구간 네트워크 상태 정보를 수신하는 단계; 및
    상기 송신 서버가 상기 제1 구간의 네트워크 상태 정보 및 상기 제2 구간의 네트워크 상태 정보를 이용하여 상기 중계 서버를 통하여 상기 복수의 사용자 단말 각각에게 전송되는 영상 스트림의 품질을 상기 레이어 별로 조절하는 단계를 포함하되,
    특정 레이어를 이용하여 영상 스트림을 수신하는 사용자 단말 중 가용 대역폭이 가장 낮은 사용자 단말의 가용 대역폭을 기반으로 상기 특정 레이어를 이용하여 전송하는 영상 스트림의 품질을 조절하는, QoS 보장 영상 스트림 방법.
  22. 제21 항에 있어서,
    상기 제1 구간의 네트워크 상태 정보 및 제2 구간의 네트워크 상태 정보는 패킷 로스(Packet Loss), 지터(Jitter) 및 지연(Delay) 중 적어도 어느 하나를 포함하며,
    상기 영상 스트림의 품질을 상기 레이어 별로 조절하는 단계는, 상기 패킷 로스(Packet Loss), 지터(Jitter) 및 지연(Delay) 중 적어도 어느 하나의 수치 변동을 기반으로 상기 레이어 별로 영상 스트림 품질을 조절하는 단계를 더 포함하는, QoS 보장 영상 스트림 방법.
  23. 송신 단말이 복수 개의 레이어(Layer)마다 서로 다른 영상 스트림 데이터를 포함하는 영상 스트림을 중계 서버로 전송하는 단계;
    상기 송신 단말이 상기 중계 서버와 상기 송신 단말 간의 네트워크 상태에 관한 정보인 제1 구간 네트워크 상태 정보를 상기 중계 서버로부터 수신하는 단계;
    상기 송신 단말이 상기 복수의 사용자 단말 각각과 상기 송신 단말 간의 네트워크 상태에 관한 정보인 제2 구간 네트워크 상태 정보를 수신하는 단계; 및
    상기 송신 단말이 상기 제1 구간의 네트워크 상태 정보 및 상기 제2 구간의 네트워크 상태 정보를 이용하여 상기 중계 서버를 통하여 상기 복수의 사용자 단말 각각에게 전송되는 영상 스트림의 품질을 상기 레이어 별로 조절하는 단계를 포함하되,
    특정 레이어를 이용하여 영상 스트림을 수신하는 사용자 단말 중 가용 대역폭이 가장 낮은 사용자 단말의 가용 대역폭을 기반으로 상기 특정 레이어를 이용하여 전송하는 영상 스트림의 품질을 조절하는, QoS 보장 영상 스트림 방법.
  24. 제23 항에 있어서,
    상기 제1 구간의 네트워크 상태 정보 및 제2 구간의 네트워크 상태 정보는 패킷 로스(Packet Loss), 지터(Jitter) 및 지연(Delay) 중 적어도 어느 하나를 포함하며,
    상기 영상 스트림의 품질을 상기 레이어 별로 조절하는 단계는, 상기 패킷 로스(Packet Loss), 지터(Jitter) 및 지연(Delay) 중 적어도 어느 하나의 수치 변동을 기반으로 상기 레이어 별로 영상 스트림 품질을 조절하는 단계를 더 포함하는, QoS 보장 영상 스트림 방법.
KR1020140100546A 2014-08-05 2014-08-05 QoS 보장 영상 스트림 방법 및 시스템과 송신 서버 KR101650756B1 (ko)

Priority Applications (4)

Application Number Priority Date Filing Date Title
KR1020140100546A KR101650756B1 (ko) 2014-08-05 2014-08-05 QoS 보장 영상 스트림 방법 및 시스템과 송신 서버
PCT/KR2014/010776 WO2016021773A1 (ko) 2014-08-05 2014-11-11 Qos 보장 영상 스트림 방법 및 시스템과 송신 서버
CN201410840681.2A CN105323651B (zh) 2014-08-05 2014-12-30 保证QoS的视频流方法、***和发送服务器
US14/588,129 US9954926B2 (en) 2014-08-05 2014-12-31 QoS-guaranteed video stream method and system, and transmitting server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140100546A KR101650756B1 (ko) 2014-08-05 2014-08-05 QoS 보장 영상 스트림 방법 및 시스템과 송신 서버

Publications (2)

Publication Number Publication Date
KR20160016419A KR20160016419A (ko) 2016-02-15
KR101650756B1 true KR101650756B1 (ko) 2016-08-24

Family

ID=55250106

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140100546A KR101650756B1 (ko) 2014-08-05 2014-08-05 QoS 보장 영상 스트림 방법 및 시스템과 송신 서버

Country Status (4)

Country Link
US (1) US9954926B2 (ko)
KR (1) KR101650756B1 (ko)
CN (1) CN105323651B (ko)
WO (1) WO2016021773A1 (ko)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11095907B2 (en) * 2017-03-27 2021-08-17 Nokia Technologies Oy Apparatus, a method and a computer program for video coding and decoding
US10735783B1 (en) 2017-09-28 2020-08-04 Twitch Interactive, Inc. Intra-rendition latency variation
US11146834B1 (en) * 2017-09-28 2021-10-12 Twitch Interactive, Inc. Server-based encoded version selection
CN108173849B (zh) * 2017-12-27 2020-11-03 北京奇艺世纪科技有限公司 一种视频服务质量的监测***及方法
KR102275296B1 (ko) * 2018-04-12 2021-07-12 주식회사 큐램 스트리밍에서의 전송속도 제어방법 및 이를 위한 시스템
EP3742739B1 (en) 2019-05-22 2021-04-14 Axis AB Method and devices for encoding and streaming a video sequence over a plurality of network connections
CN111510737B (zh) * 2020-04-26 2022-03-22 广州虎牙科技有限公司 一种视频数据的传输方法、装置、设备和存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5029125B2 (ja) * 2007-04-27 2012-09-19 日本電気株式会社 可用帯域幅推定システム、ストリームデータ配信システム、方法、及び、プログラム
US20130091528A1 (en) * 2010-06-23 2013-04-11 Mitsubishi Electric Corporation Video reproduction system, receive terminal, home gateway device, and quality control system
JP2014022781A (ja) * 2012-07-12 2014-02-03 Nippon Telegr & Teleph Corp <Ntt> 映像品質制御装置及び方法及びプログラム

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63278316A (ja) * 1987-05-11 1988-11-16 Fuji Electric Co Ltd 混合絶縁油の注油処理装置
US20020019984A1 (en) * 2000-01-14 2002-02-14 Rakib Selim Shlomo Headend cherrypicker with digital video recording capability
US20030135863A1 (en) * 2002-01-17 2003-07-17 Koninklijke Philips Electronics N.V. Targeted scalable multicast based on client bandwidth or capability
DE10339497A1 (de) * 2003-08-27 2005-03-31 Siemens Ag Verfahren zur Übertragung von Daten in einem Datennetz
KR20050093438A (ko) 2004-03-19 2005-09-23 엘지전자 주식회사 패킷 손실률에 따른 프레임 전송률 조절 방법
CN1764184B (zh) * 2005-10-20 2010-07-07 中兴通讯股份有限公司 一种实时流媒体通讯传输方法
CN101198035A (zh) * 2008-01-10 2008-06-11 杭州华三通信技术有限公司 视频监控方法、视频转移分发方法、装置及视频监控***
CN101232462B (zh) * 2008-02-25 2012-04-18 杭州华三通信技术有限公司 实时业务的服务质量调整方法及装置
JP4994283B2 (ja) * 2008-03-31 2012-08-08 三菱電機株式会社 ホームゲートウェイ装置およびホームゲートウェイ装置の通信品質制御方法
KR20100071688A (ko) * 2008-12-19 2010-06-29 한국전자통신연구원 스케일러블 비디오 코딩 기반의 포괄적 비디오 접근을 위한스트리밍 서비스 장치 및 방법
US9485299B2 (en) * 2009-03-09 2016-11-01 Arris Canada, Inc. Progressive download gateway
US9197677B2 (en) * 2009-03-09 2015-11-24 Arris Canada, Inc. Multi-tiered scalable media streaming systems and methods
CA2711311C (en) * 2009-08-10 2016-08-23 Seawell Networks Inc. Methods and systems for scalable video chunking
US8681680B2 (en) * 2009-09-15 2014-03-25 Comcast Cable Communications, Llc Control plane architecture for multicast cache-fill
CN102457564A (zh) * 2010-10-28 2012-05-16 华为技术有限公司 点对点网络的实时流媒体下载方法及***
US20120173748A1 (en) * 2011-01-03 2012-07-05 Nokia Corporation Hybrid transport-layer protocol media streaming
US9866877B2 (en) * 2011-03-08 2018-01-09 Cox Communications, Inc. Transparent scalable video coding
KR101387166B1 (ko) * 2012-12-18 2014-04-21 주식회사 마크애니 데이터 스트림을 전송하기 위한 장치, 방법 및 시스템

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5029125B2 (ja) * 2007-04-27 2012-09-19 日本電気株式会社 可用帯域幅推定システム、ストリームデータ配信システム、方法、及び、プログラム
US20130091528A1 (en) * 2010-06-23 2013-04-11 Mitsubishi Electric Corporation Video reproduction system, receive terminal, home gateway device, and quality control system
JP2014022781A (ja) * 2012-07-12 2014-02-03 Nippon Telegr & Teleph Corp <Ntt> 映像品質制御装置及び方法及びプログラム

Also Published As

Publication number Publication date
WO2016021773A1 (ko) 2016-02-11
KR20160016419A (ko) 2016-02-15
US9954926B2 (en) 2018-04-24
CN105323651B (zh) 2018-09-28
CN105323651A (zh) 2016-02-10
US20160044082A1 (en) 2016-02-11

Similar Documents

Publication Publication Date Title
KR101650756B1 (ko) QoS 보장 영상 스트림 방법 및 시스템과 송신 서버
US10944698B2 (en) Apparatus and method of managing resources for video services
CN107223325B (zh) 用于数字内容的自适应虚拟广播的方法和***
US8780960B2 (en) Adjustment of transmission data rate based on data errors and/or latency
US7450508B2 (en) Dynamic quality-of-service mapping apparatus and method through hybrid monitoring in digital home service
US10200432B2 (en) HTTP streaming client adaptation algorithm based on proportional-integral control
US20150304737A1 (en) QoE PROVISIONING METHOD AND APPARATUS FOR MOBILE VIDEO APPLICATION
JP5990640B2 (ja) 優先順位マーキングを用いる適応ストリーミングアウェアネットワークノード、クライアント及び方法
CN103828327A (zh) 用于控制带宽的方法以及相应的设备
Fu et al. QoE-aware traffic management for mobile video delivery
Wang et al. TCP-friendly congestion control for the fair streaming of scalable video
TWI758680B (zh) 資料中繼裝置、方法、發送系統及程式
US9774463B2 (en) Optimizing user experiences of web conferences that send data with source-specific multicast and automatic multicast tunneling
Eckert et al. QoE Management Framework for Internet Services in SDN‐Enabled Mobile Networks
Qadir et al. QoE-aware cross-layer architecture for video traffic over Internet
Abdelsalam et al. Evaluation of DASH algorithms on dynamic satellite-enhanced hybrid networks
Yuan et al. Context-Aware Cross-Layer Congestion Control for Large-Scale Live Streaming
US7715417B2 (en) Creating a telecommunications channel from multiple channels that have differing signal-quality guarantees
US20140181261A1 (en) Method and apparatus for providing efficient transmission of streaming video through a complex ip network
Khorov et al. SAND-inspired Cross-layer Approach for CCTV in 5G Networks
Ma et al. Access point centric scheduling for dash streaming in multirate 802.11 wireless network
Nam Measuring and Improving the Quality of Experience of Adaptive Rate Video
Sathyanarayana Multipath Transport Protocols for Real Time Communication Systems
Mansy Network and end-host support for HTTP adaptive video streaming
Balasubramaniam et al. Article VI

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
X701 Decision to grant (after re-examination)
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20190701

Year of fee payment: 4