KR102066707B1 - 비디오 스트리밍 서비스를 제공하기 위한 방법 및 그 모바일 장치 - Google Patents

비디오 스트리밍 서비스를 제공하기 위한 방법 및 그 모바일 장치 Download PDF

Info

Publication number
KR102066707B1
KR102066707B1 KR1020130066062A KR20130066062A KR102066707B1 KR 102066707 B1 KR102066707 B1 KR 102066707B1 KR 1020130066062 A KR1020130066062 A KR 1020130066062A KR 20130066062 A KR20130066062 A KR 20130066062A KR 102066707 B1 KR102066707 B1 KR 102066707B1
Authority
KR
South Korea
Prior art keywords
information
mobile device
terminal
server
time point
Prior art date
Application number
KR1020130066062A
Other languages
English (en)
Other versions
KR20140144066A (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 KR1020130066062A priority Critical patent/KR102066707B1/ko
Priority to US14/897,623 priority patent/US10631030B2/en
Priority to PCT/KR2014/005075 priority patent/WO2014200242A1/ko
Publication of KR20140144066A publication Critical patent/KR20140144066A/ko
Application granted granted Critical
Publication of KR102066707B1 publication Critical patent/KR102066707B1/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/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • 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
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808Management of client data
    • H04N21/25841Management of client data involving the geographical location of the client
    • 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/41Structure of client; Structure of client peripherals
    • H04N21/414Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance
    • H04N21/41407Specialised client platforms, e.g. receiver in car or embedded in a mobile appliance embedded in a portable device, e.g. video client on a mobile phone, PDA, laptop
    • 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/643Communication protocols
    • H04N21/64322IP
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W36/00Hand-off or reselection arrangements
    • H04W36/0005Control or signalling for completing the hand-off
    • H04W36/0011Control or signalling for completing the hand-off for data sessions of end-to-end connection
    • H04W36/0016Hand-off preparation specially adapted for end-to-end data sessions
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W36/00Hand-off or reselection arrangements
    • H04W36/24Reselection being triggered by specific parameters
    • H04W36/32Reselection being triggered by specific parameters by location or mobility data, e.g. speed data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W36/00Hand-off or reselection arrangements
    • H04W36/24Reselection being triggered by specific parameters
    • H04W36/32Reselection being triggered by specific parameters by location or mobility data, e.g. speed data
    • H04W36/322Reselection being triggered by specific parameters by location or mobility data, e.g. speed data by location data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W36/00Hand-off or reselection arrangements
    • H04W36/02Buffering or recovering information during reselection ; Modification of the traffic flow during hand-off
    • H04W36/023Buffering or recovering information during reselection

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Graphics (AREA)
  • General Engineering & Computer Science (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

비디오 스트리밍 서비스를 제공하기 위한 기술에 관한 것으로서, 비디오 스트리밍 서비스를 제공하기 위한 모바일 장치의 방법은, 주기적으로 상기 모바일 장치의 위치와 이동 경로 정보를 제 1 서버로 전송하는 과정과, 상기 제 1 서버로부터 상기 모바일 장치의 이동 경로에 따라 예측되는 위치별 비트레이트 정보를 수신하는 과정과, 상기 모바일 장치의 예측되는 위치별 비트레이트 정보를 기반으로 상기 모바일 장치의 현재 위치에 대한 비트레이트를 결정하는 과정과, 상기 비트레이트를 기반으로 비디오 세그먼트를 전송해줄 것을 제 2 서버로 요청하는 과정을 포함한다.

Description

비디오 스트리밍 서비스를 제공하기 위한 방법 및 그 모바일 장치{METHOD FOR PROVIDING FOR A VIDEO STREAMING SERVICE AN MOBILE DEVICE THEREOF}
본 발명은 모바일 장치에 관한 것으로서, 특히 모바일 네트워크에서 모바일 장치로 비디오 스트리밍 서비스를 제공하기 위한 방법 및 장치에 관한 것이다.
최근 스마트폰 및 태블릿 PC(Personal Computer) 등과 같은 모바일 장치의 급격한 발달에 따라 무선 음성 통화 및 정보 교환이 가능한 모바일 장치는 생활 필수품이 되었다. 모바일 장치는 보급 초기에 단순히 무선 통화가 가능한 휴대 장치로 인식되었으나, 그 기술이 발달하고 무선 인터넷이 도입됨에 따라 단순히 무선 통화가 가능한 휴대 장치에서 벗어나 일정관리, 게임, 리모컨, 이미지 촬영 등의 기능을 수행하는 멀티미디어 장치로 발전하여 사용자의 욕구를 충족시키고 있다.
특히, 모바일 네트워크의 비디오 트래픽은 모바일 네트워크의 전체 트래픽의 약 70%를 차지하고 있으며, 전체 트래픽의 양 또한 꾸준히 증가하고 있다. 더욱이, 모바일 네트워크뿐만 아니라 전체 네트워크 트래픽에서의 비디오 트래픽 또한, 급격하게 증가하고 있는 추세이다. 비디오 트래픽의 증가 추세가 현재와 같다면, 2016년도의 비디오 트래픽은 전체 네트워크의 50%이상을 초과할 것으로 예측된다.
특히, 최근에는 모바일 장치의 네트워크 사용량이 증가함에 따라, 비디오 세그먼트를 수신하여 실시간으로 비디오를 재생하기 위한 비디오 스트리밍 서비스의 사용량이 증가하고 있다. 비디오 세그먼트를 다운로드 하고자 하는 경우, 종래의 모바일 장치는 현재 채널의 상태정보에 따른 비트 레이트를 선택하여 비디오 세그먼트를 다운로드하게 된다. 이때, 모바일 장치가 빠른 속도로 움직이는 경우, 혹은, 모바일 장치가 서비스 품질이 열악한 환경이나 인터넷에 접속이 불가능한 영역에 들어가는 경우, 혹은, 핸드오버가 발생하는 경우, 모바일 장치의 비디오 스트리밍 서비스의 효율성이 저하되는 문제점이 발생한다.
이에 따라, 모바일 장치에서 모바일 장치의 상태 정보 및 위치에 따라, 고효율의 비디오 스트리밍 서비스를 제공하기 위한 방법이 요구된다.
따라서, 본 발명의 실시 예는 모바일 장치에서 비디오 스트리밍 서비스를 제공하기 위한 방법 및 장치를 제공함에 있다.
본 발명의 다른 실시 예는 모바일 장치에서 위치 정보에 따른 채널 상태를 예측하고, 예측된 채널 상태에 대응하는 비디오 스트리밍 서비스의 비트레이트를 선택하기 위한 방법 및 장치를 제공함에 있다.
본 발명의 또 다른 실시 예는 위치정보 서버에서 모바일 장치의 이동 경로를 기반으로 비디오 스트리밍 서비스에 대한 위치별 비트레이트를 예측하고, 예측된 위치별 비트레이트 정보를 모바일 장치로 전송하기 위한 방법 및 장치를 제공함에 있다.
본 발명의 또 다른 실시 예는 모바일 장치에서 예측된 채널 상태에 따라 비디오 세그먼트를 프리페칭(Pre-Fetching)하기 위한 방법 및 장치를 제공함에 있다.
본 발명의 또 다른 실시 예는 모바일 장치에서 이동 경로 내에 비디오 스트리밍 서비스의 비트레이트가 급격히 감소되는 구간이 존재하는 것으로 예측되는 경우, 고화질의 비디오 세그먼트를 수신하는 대신에 저화질의 다수의 비디오 세그먼트를 미리 수신하기 위한 방법 및 장치를 제공함에 있다.
본 발명의 또 다른 실시 예는 위치정보 서버에서 모바일 장치의 핸드오버를 예측하고, 예측된 핸드오버 타겟 기지국의 저장 장치에 비디오 세그먼트를 프리페칭하기 위한 방법 및 장치를 제공함에 있다.
본 발명의 실시 예에 따르면, 비디오 스트리밍 서비스를 제공하기 위한 모바일 장치의 방법은, 주기적으로 상기 모바일 장치의 위치와 이동 경로 정보를 제 1 서버로 전송하는 과정과, 상기 제 1 서버로부터 상기 모바일 장치의 이동 경로에 따라 예측되는 위치별 비트레이트 정보를 수신하는 과정과, 상기 모바일 장치의 예측되는 위치별 비트레이트 정보를 기반으로 상기 모바일 장치의 현재 위치에 대한 비트레이트를 결정하는 과정과, 상기 비트레이트를 기반으로 비디오 세그먼트를 전송해줄 것을 제 2 서버로 요청하는 과정을 포함한다.
본 발명의 실시 예에 따르면, 비디오 스트리밍 서비스를 제공하기 위한 제 1 서버의 방법은, 모바일 장치로부터 주기적으로 위치와 이동 경로 정보를 수신하는 과정과, 상기 모바일 장치의 위치 및 이동 경로 정보를 이용하여 각 세그먼트 단위 시간 이후에 상기 모바일 장치가 이동할 위치를 예측하는 과정과, 상기 예측된 위치별 비트레이트를 예측하는 과정과, 상기 예측된 위치별 비트레이트 정보를 상기 모바일 장치로 전송하는 과정을 포함한다.
본 발명의 실시 예에 따르면, 비디오 스트리밍 서비스를 제공하기 위한 기지국의 방법은, 제 1 서버로부터 모바일 장치에 대한 비디오 세그먼트가 저장될 저장 장치의 정보의 전송을 요청받는 과정과, 상기 모바일 장치에 대한 비디오 세그먼트가 저장될 저장 장치의 정보를 상기 제 1 서버로 전송하는 과정과, 상기 모바일 장치가 특정 예측 위치에서 요청할 것으로 예상되는 비디오 세그먼트를 상기 제 2 서버로부터 미리 수신하는 과정과, 상기 미리 수신된 비디오 세그먼트를 상기 저장 장치에 저장하는 과정과, 상기 모바일 장치가 상기 기지국으로 핸드오버를 수행한 후, 상기 저장 장치에 저장된 비디오 세그먼트를 상기 모바일 장치로 전송하는 과정을 포함한다.
본 발명의 실시 예에 따르면, 비디오 스트리밍 서비스를 제공하기 위한 모바일 장치는, 주기적으로 상기 모바일 장치의 위치와 이동 경로 정보를 제 1 서버로 전송하고, 상기 제 1 서버로부터 상기 모바일 장치의 이동 경로에 따라 예측되는 위치별 비트레이트 정보를 수신하는 송수신부와, 상기 모바일 장치의 예측되는 위치별 비트레이트 정보를 기반으로 상기 모바일 장치의 현재 위치에 대한 비트레이트를 결정하고, 상기 비트레이트를 기반으로 비디오 세그먼트를 전송해줄 것을 제 2 서버로 요청하기 위한 기능을 제어하는 제어부를 포함한다.
본 발명의 실시 예에 따르면, 비디오 스트리밍 서비스를 제공하기 위한 제 1 서버의 장치는, 모바일 장치와 신호를 송수신하는 송수신부와, 상기 모바일 장치로부터 주기적으로 위치와 이동 경로 정보를 수신하고, 상기 모바일 장치의 위치 및 이동 경로 정보를 이용하여 각 세그먼트 단위 시간 이후에 상기 모바일 장치가 이동할 위치를 예측하고, 상기 예측된 위치별 비트레이트를 예측하고, 상기 예측된 위치별 비트레이트 정보를 상기 모바일 장치로 전송하기 위한 기능을 제어하는 제어부를 포함한다.
본 발명의 실시 예에 따르면, 비디오 스트리밍 서비스를 제공하기 위한 기지국의 장치는, 신호를 송수신하는 송수신부와, 모바일 장치로 제공할 비디오 세그먼트를 저장하는 저장 장치와, 제 1 서버로부터 모바일 장치에 대한 비디오 세그먼트가 저장될 저장 장치의 정보의 전송을 요청받고, 상기 모바일 장치에 대한 비디오 세그먼트가 저장될 저장 장치의 정보를 상기 제 1 서버로 전송하고, 상기 모바일 장치가 특정 예측 위치에서 요청할 것으로 예상되는 비디오 세그먼트를 상기 제 2 서버로부터 미리 수신하고, 상기 미리 수신된 비디오 세그먼트를 상기 저장 장치에 저장하고, 상기 모바일 장치가 상기 기지국으로 핸드오버를 수행한 후, 상기 저장 장치에 저장된 비디오 세그먼트를 상기 모바일 장치로 전송하기 위한 기능을 제어하는 제어부를 포함한다.
본 발명에서는 모바일 장치의 이동 경로에 따른 채널 상태 및 핸드오버 여부를 사전에 예측하고, 예측 결과를 바탕으로 비디오 세그먼트의 품질을 선택하여, 채널이 열악한 환경 혹은 핸드오버가 발생되는 상황에서 다수의 비디오 세그먼트를 모바일 장치 혹은 핸드오버 타겟 기지국에 프리페치함으로써, 사용자에게 보다 안정적인 스트리밍 서비스를 제공할 수 있는 효과가 있다. 더욱이, 안정적인 스트리밍 서비스를 제공할 수 있기 때문에 서비스 실패로 인해 수반되는 중복된 트래픽 발생을 감소시킬 수 있고, 기지국에서 캐시를 활용함으로써 외부 트래픽을 감소시키고, 전체 네트워크의 부하를 감소시킬 수 있는 효과가 있다.
도 1은 본 발명의 실시 예에 따른 모바일 네트워크에서 모바일 장치의 채널 정보 데이터 베이스를 구축하는 절차를 도시하는 도면,
도 2는 본 발명의 실시 예에 따른 모바일 네트워크에서 모바일 장치의 위치 정보 보고 메시지의 구조를 도시하는 도면,
도 3a는 본 발명의 실시 예에 따른 모바일 네트워크에서 지리정보 요청 메시지의 구조를 도시하는 도면,
도 3b는 본 발명의 실시 예에 따른 모바일 네트워크에서 지리정보 응답 메시지의 구조를 도시하는 도면,
도 4a 본 발명의 실시 예에 따른 모바일 네트워크에서 네트워크 정보 요청 메시지의 구조를 도시하는 도면,
도 4b는 본 발명의 실시 예에 따른 모바일 네트워크에서 네트워크 정보 응답 메시지의 구조를 도시하는 도면,
도 5는 본 발명의 일 실시 예에 따른 모바일 네트워크에서 모바일 장치의 이동 경로에 따라 비디오 스트리밍 서비스를 제공하는 시그널링을 도시하는 도면,
도 6은 본 발명의 일 실시 예에 따른 모바일 네트워크에서 모바일 장치가 위치정보 서버로 비트 레이트 예측을 요청하는 메시지의 구조를 도시하는 도면,
도 7은 본 발명의 일 실시 예에 따른 모바일 네트워크에서 모바일 장치의 예측 위치별 예측 비트 레이트를 나타내는 메시지의 구조를 도시하는 도면,
도 8은 본 발명의 일 실시 예에 따른 모바일 장치에서 비디오 스트리밍 서비스를 제공받는 절차를 도시하는 도면,
도 9는 본 발명의 일 실시 예에 따른 위치정보 서버에서 모바일 장치의 비디오 스트리밍 서비스를 제공하기 위한 절차를 도시하는 도면,
도 10은 모바일 장치의 위치에 따른 종래 방식과 본 발명의 비트레이트 선택 그래프를 도시하는 도면,
도 11은 본 발명의 다른 실시 예에 따른 모바일 네트워크의 구조를 도시하는 도면,
도 12는 본 발명의 다른 실시 예에 따른 모바일 네트워크에서 모바일 장치의 핸드오버에 따라 비디오 스트리밍 서비스를 제공하는 시그널링을 도시하는 도면,
도 13a 본 발명의 다른 실시 예에 따른 모바일 네트워크에서 네트워크 정보 및 캐시(cache) 정보 요청 메시지의 구조를 도시하는 도면,
도 13b 본 발명의 다른 실시 예에 따른 모바일 네트워크에서 네트워크 정보 및 캐시 정보 응답 메시지의 구조를 도시하는 도면,
도 13c 본 발명의 다른 실시 예에 따른 모바일 네트워크에서 프리페칭 요청 메시지의 구조를 도시하는 도면,
도 14는 본 발명의 다른 실시 예에 따른 모바일 네트워크에서 모바일 장치의 위치별 비트레이트 및 타겟 기지국의 캐시 정보를 나타내는 메시지의 구조를 도시하는 도면,
도 15는 본 발명의 다른 실시 예에 따른 모바일 장치에서 비디오 스트리밍 서비스를 제공받는 절차를 도시하는 도면,
도 16은 본 발명의 다른 실시 예에 따른 위치정보 서버에서 모바일 장치로 비디오 스트리밍 서비스를 제공하기 위한 절차를 도시하는 도면,
도 17은 본 발명의 다른 실시 예에 따른 타겟 기지국에서 모바일 장치의 비디오 스트리밍 서비스를 제공하기 위한 프리페칭 절차를 도시하는 도면,
도 18은 본 발명의 실시 예에 따른 모바일 장치의 블럭 구성을 도시하는 도면,
도 19는 본 발명의 실시 예에 따른 위치정보 서버의 블럭 구성을 도시하는 도면, 및
도 20은 본 발명의 실시 예에 따른 타겟 기지국에서 모를 위한 프리페칭 절차를 도시하는 도면.
이하 본 발명의 바람직한 실시 예를 첨부된 도면을 참조하여 설명한다. 그리고, 본 발명을 설명함에 있어서, 관련된 공지기능 혹은 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단된 경우 그 상세한 설명은 생략할 것이다. 또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
이하 설명에서 모바일 장치는 무선 통신을 지원하는 이동통신 단말기, 스마트폰(Smart Phone), 태블릿 PC(Tablet Personal Computer), 디지털 카메라, MP3, 네비게이션, 랩탑(Laptop) 및 넷북(Netbook) 등을 포함한다.
도 1은 본 발명의 실시 예에 따른 모바일 네트워크에서 모바일 장치의 채널 정보 데이터 베이스를 구축하는 절차를 도시하고 있다.
도 1을 참조하면, 본 발명의 실시 예에 따른 모바일 네트워크는 모바일 장치(mobile station 혹은 client equipment, 100), 기지국(Base Station: BS, 102), 위치정보서버(Location information server:LOCAS, 104), 지리정보시스템(Geographic Information System:GIS, 106)을 포함하여 구성된다.
모바일 장치(100)는 비디오 스트리밍 서비스에 대한 비트레이트 예측을 위해, 위치정보서버(104)가 모바일 장치(100)의 이동 경로에 대한 채널 상태를 예측하는데 필요한 정보들을 주기적으로 보고한다(110단계). 예를 들어, 모바일 장치(100)는 도 2에 도시된 바와 같이, 해당 메시지가 비디오 스트리밍 서비스에 대한 비트레이트 예측을 위한 보고 메시지임을 나타내는 타입 정보(200), 모바일 장치(100)의 현재 위치 및/혹은 이동 경로 정보(202), 모바일 장치(100)의 현재 위치에 대응하는 채널 정보(204), 모바일 장치(100)의 식별 정보(206) 및 현재 시간 정보(208)를 포함하는 보고 메시지를 위치정보서버(104)로 주기적으로 전송할 수 있다. 모바일 장치(100)의 식별 정보(206)는 모바일 장치의 IP, IMSI(International Mobile Subscriber Identity) 혹은 GUTI(Globally Unique Temporary Identifier)일 수 있다.
이때, 모바일 장치(100)는 사용자로부터 출발지, 목적지, 출발 시각, 이동 수단, 경유지 및/혹은 이동 경로 등과 같은 정보를 직접 입력받고, 입력된 이동 경로 정보를 위치정보서버(104)로 전송할 수 있다. 예를 들어, 모바일 장치(100)는 "출발지:서울, 도착지:부산역, 출발 시각: 18시 30분, 이동 수단: KTX 1021호"를 직접 입력받을 수 있다.
위치정보서버(104)는 모바일 장치(100)의 이동 경로에 대한 채널 상태를 예측하기 위해, 지리정보시스템(106)으로 모바일 장치(100)의 이동 경로 정보에 대응하는 추가 정보를 요청하고(112단계), 지리정보시스템(106)으로부터 추가 정보를 획득할 수 있다(114단계). 예를 들어, 위치정보서버(104)는 지리정보 컨텐츠에 대해 미리 정의된 API를 이용하여 모바일 장치(100)의 이동 경로에 대한 실시간 교통 정보, 이동 경로 내 지형 정보, 이동 수단에 대한 정보 등과 같은 추가적인 정보를 지리정보시스템(106)으로부터 획득할 수 있다. 이때, 위치정보서버(104)는 도 3a에 도시된 바와 같이, 해당 메시지가 지리정보 요청 메시지임을 나타내는 타입 정보(300)와 모바일 장치(100)의 이동 경로 정보(302)를 포함하는 지리정보 요청 메시지를 지리정보 시스템(106)으로 전송할 수 있다. 또한, 지리정보시스템(106)은 지리정보 요청에 대한 응답으로, 도 3b에 도시된 바와 같이, 해당 메시지가 지리정보 응답 메시지임을 나타내는 타입정보(310)와 모바일 장치(100)의 이동 경로에 대한 추가적인 경로 정보(312)를 포함하는 지리정보 응답 메시지를 위치정보서버(104)로 전송할 수 있다.
또한, 위치정보서버(104)는 모바일 장치(100)의 이동 경로에 대한 채널 상태를 예측하기 위해, 기지국(102)으로 모바일 장치(100)에 대응하는 네트워크 정보를 요청하고(116단계), 기지국(102)으로부터 네트워크 정보를 획득할 수 있다(118단계). 예를 들어, 위치정보서버(104)는 모바일 장치(100)로 할당될 자원 정보, 기지국(106)의 서비스 사용자 수, 기지국(102)의 혼잡도 등과 같은 네트워크 정보를 기지국(102)으로부터 획득할 수 있다. 이때, 위치정보서버(104)는 도 4a에 도시된 바와 같이, 해당 메시지가 모바일 장치에 대한 정보 요청 메시지임을 나타내는 타입 정보(400)와 모바일 장치(100)의 식별 정보(402) 및 모바일 장치의 자원 할당 관련 정보(404)를 포함하는 네트워크 정보 요청 메시지를 기지국(102)으로 전송할 수 있다. 여기서, 모바일 장치의 정보(404)는 모바일 장치의 QCI(QoS Class Identifier) 혹은 ARP(Allocation and Retention Priorty)일 수 있다. 또한, 기지국(102)은 네트워크 정보 요청 메시지에 대한 응답으로, 도 4b에 도시된 바와 같이, 해당 메시지가 모바일 장치에 대한 정보 응답 메시지임을 나타내는 타입 정보(410), 해당 모바일 장치(100)의 식별 정보(412), 및 네트워크 자원 정보(414)를 포함하는 응답 메시지를 위치정보서버(104)로 전송할 수 있다. 이때 네트워크 자원 정보(414)는 기지국(106)이 단위 시간당 모바일 장치(100)로 할당 가능한 무선 자원 블럭, 기지국(106)의 서비스 사용자 수, 기지국(102)의 혼잡도 등을 포함할 수 있다. 여기서, 기지국(106)은 모바일 장치(100)의 자원 할당 관련 정보(404)인 QCI 혹은 ARP를 참조하여 모바일 장치(100)로 할당 가능한 무선 자원 블럭을 결정할 수 있다.
위치정보서버(104)는 110단계 내지 118단계를 통해 획득한 정보들을 바탕으로 모바일 장치(100)의 이동 위치별 채널 상태를 예측하고, 예측 결과를 데이터베이스로 구축할 수 있다. 위치정보서버(104)는 주기적으로 데이터베이스를 갱신할 수 있다.
이하 본 명세서에서는 상술한 바와 같이 구축된 데이터베이스를 기반으로, 단말의 이동 위치별 비트레이트를 예측하여, 끊김없는 비디오 스트리밍 서비스를 제공하기 위한 두 가지 실시 예에 대해서 설명하기로 한다.
첫 번째 실시 예는 모바일 장치가 서비스 품질이 열악한 환경이나 인터넷에 접속이 불가능한 영역에 들어가는 경우, 예측된 채널 정보를 기반으로 다수의 비디오 세그먼트를 모바일 장치에 프리페칭하는 방법에 관한 것이다.
두 번째 실시 예는 모바일 장치가 타겟 기지국으로 핸드오버할 것으로 예측되는 경우, 예측된 채널 정보를 기반으로 다수의 비디오 세그먼트를 타겟 기지국의 저장 장치에 프리페칭하는 방법에 관한 것이다.
먼저, 하기 도 5 내지 도 10을 참조하여, 첫 번째 실시 예에 대해 상세히 설명하기로 한다.
도 5는 본 발명의 일 실시 예에 따른 모바일 네트워크에서 모바일 장치의 이동 경로에 따라 비디오 스트리밍 서비스를 제공하는 시그널링을 도시하고 있다.
도 5를 참조하면, 모바일 장치(500)는 510단계에서 위치정보서버(504)로 모바일 장치(500)의 비디오 세그먼트에 대한 이동 경로별 비트레이트를 예측해줄 것을 요청하는 메시지를 송신한다. 이때, 비트레이트 예측 요청 메시지는 도 6에 도시된 바와 같이, 해당 메시지가 비트레이트 예측 요청 메시지임을 나타내는 타입 정보(601), 모바일 장치(500)의 현재 위치 및/혹은 이동 경로 정보(603), 채널 정보(605), 모바일 장치(500)의 식별 정보(607), 현재 시간 정보(609) 및 컨텐츠 URL 혹은 MPD(Media Presentation Description)의 URL 정보(611)를 포함할 수 있다. 비트레이트 예측 요청 메시지는 모바일 장치(500)에서 비디오 스트리밍 서비스를 제공받고자 할 경우, 혹은 비디오 스트리밍 서비스를 제공받는 중에 전송될 수 있으며, 특정 이벤트 발생 시에 전송될 수도 있고, 주기적으로 전송될 수도 있다.
위치정보서버(504)는 모바일 장치(500)로부터 비트레이트 예측 요청 메시지를 수신하고, 512단계에서 모바일 장치(500)의 이동 경로 정보를 포함하는 지리정보 요청 메시지를 지리정보시스템(506)으로 전송하여 모바일 장치(500)의 이동 경로에 대한 추가적인 경로 정보를 요청한다. 예를 들어, 지리정보 요청 메시지는 도 3a에 도시된 바와 같이 구성될 수 있다. 지리정보시스템(506)은 위치정보서버(504)로부터 지리정보 요청 메시지를 수신하고, 수신된 지리정보 요청 메시지로부터 모바일 장치(500)의 이동 경로 정보를 추출하고, 추출된 이동 경로 정보에 대응하는 추가 정보를 미리 구축된 데이터베이스에서 검색한 후, 514단계에서 검색된 추가 정보를 포함하는 지리정보 응답 메시지를 위치정보서버(504)로 전송한다. 예를 들어, 지리정보 응답 메시지는 도 3b에 도시된 바와 같이 구성될 수 있다. 여기서, 지리정보시스템(506)은 지형정보 시스템, 교통량 정보 시스템, 철도노선 시스템, 버스노선 시스템 등과 같은 시스템일 수 있으며, 이때 이동 경로에 대한 추가적인 정보는, 이동 경로에 대응하는 지형 정보, 이동 경로에 대응하는 실시간 교통 정보, 이동 경로에 대한 이동 수단 관련 정보 등을 포함할 수 있다.
위치정보서버(504)는 516단계에서 모바일 장치(500)로부터 수신된 정보와 지리정보시스템(506)으로부터 수신된 정보를 바탕으로 현재시점으로부터 세그먼트 단위시간 이후에 모바일 장치(502)가 이동할 위치를 예측한다. 예를 들어, 위치정보서버(504)는 모바일 장치(500)로부터 주기적으로 보고된 비트레이트 요청 메시지 내의 위치 정보를 이용하여, 모바일 장치(500)의 이동 속도를 계산하고, 계산된 이동 속도를 바탕으로 특정 세그먼트 시간 이후에 모바일 장치(500)의 위치 좌표를 계산할 수 있다.
하기 수학식 1은 모바일 장치(500)의 위치를 계산하는 방식을 나타낸다.
Figure 112013051329817-pat00001
Figure 112013051329817-pat00002
여기서, Pnext는 특정 시간 이후에 모바일 장치(500)가 이동할 것으로 예측되는 위치를 의미하고, Pcurrent는 모바일 장치(500)의 현재 위치를 의미하고, Pprevious는 모바일 장치(500)의 이전 위치를 의미하고, v는 모바일 장치(500)의 이동 속도를 의미한다. 또한, tS는 세그먼트 시간을 의미하고, tcurrent는 모바일 장치(500)의 현재 위치 Pcurrent를 보고한 시간을 의미하고, tprevious는 모바일 장치(500)의 이전 Pprevious를 보고한 시간을 의미한다.
즉, 위치정보서버(504)는 수학식 1에 나타낸 바와 같이, 모바일 장치(500)가 이전 위치에서 현재 위치까지 직선운동을 하는 것을 가정하고, 이에 대응하는 이동 속도를 계산한 후, 모바일 장치(500)가 특정 세그먼트 시간 동안 직선운동을 하는 경우에 위치하게 될 위치를 예측할 수 있다.
또한, 위치정보서버(504)는 518단계에서 기지국(502)으로 네트워크 정보를 요청한다. 이때, 기지국(502)은 특정 세그먼트 시간 이후에 모바일 장치(500)로 서비스를 제공할 것으로 예측되는 기지국을 의미하는 것으로, 현재 시점의 서빙 기지국과 동일할 수도 있고, 현재 시점의 서빙 기지국과 다른 기지국일 수도 있다. 특정 세그먼트 시간 이후에 모바일 장치(500)로 서비스를 제공할 것으로 예측되는 기지국은 특정 세그먼트 시간 이후에 대응하는 모바일 장치(500)의 예측 위치 정보를 바탕으로 예측될 수 있다. 위치정보서버(504)는 도 4a에 도시된 바와 같이 구성된 네트워크 정보 요청 메시지를 기지국(502)으로 전송할 수 있다. 기지국(502)은 위치정보서버(504)로부터 네트워크 정보 요청 메시지를 수신한 후, 네트워크 정보 요청 메시지에서 모바일 장치(500)의 식별 정보를 추출하고, 추출된 식별 정보에 대응하는 모바일 장치(500)로 할당할 무선 자원을 결정할 수 있다. 기지국(502)은 520단계에서 모바일 장치(500)로 할당할 무선 자원에 대한 정보를 포함하는 네트워크 정보 응답 메시지를 위치정보서버(504)로 전송한다. 이때, 네트워크 정보 응답 메시지는 도 4b에 도시된 바와 같이, 네트워크 자원 정보(414)를 포함할 수 있으며, 네트워크 자원 정보(414)는 기지국(502)이 단위 시간당 모바일 장치(100)로 할당할 수 있는 무선 자원 블럭, 기지국(502)의 서비스 사용자 수, 및 기지국(502)의 혼잡도 중 적어도 하나를 포함할 수 있다.
위치정보서버(504)는 522단계에서 모바일 장치(500)의 예측 위치별 비트레이트를 예측한다. 이때, 위치정보서버(504)는 모바일 장치(500)로부터 수신된 비트레이트 예측 요청 메시지, 지리정보시스템(506)으로부터 수신된 지리정보 응답 메시지, 및 기지국(502)으로부터 수신된 네트워크 정보 응답 메시지에 포함된 정보들을 이용하여 모바일 장치(500)의 이동 경로에 따라 모바일 장치(500)가 특정 시간에 위치할 것으로 예측되는 위치 각각에 대응하는 비트레이트를 결정 혹은 예측할 수 있다.
위치정보서버(504)는 524단계에서 모바일 장치(500)의 예측 위치별로 예측된 비트레이트의 정보를 포함하는 비트레이트 예측 응답 메시지를 모바일 장치(500)로 전송한다. 이때, 비트레이트 예측 응답 메시지는 도 7에 도시된 바와 같이, 해당 메시지가 비트레이트 예측 응답 메시지임을 나타내는 타입 정보(701), 모바일 장치(500)의 예측 위치 정보(703), 예측 위치에 대응하는 시간 정보(705), 예측 위치에 대응하는 비트레이트 정보(707)를 포함할 수 있다. 예를 들어, 예측 응답 메시지는 모바일 장치(500)가 특정 시간 이후의 시점을 나타내는 Time 1에 Position 1에 위치할 것으로 예측되고, 모바일 장치(500)가 Time 1의 시점에 Position 1에 위치할 경우 Bitrate 1로 비디오 스트리밍 서비스를 제공받을 수 있을 것으로 예측됨을 나타낼 수 있다.
모바일 장치(500)는 위치정보서버(504)로부터 비트레이트 예측 응답 메시지를 수신하고, 526단계에서 비트레이트 예측 응답 메시지에 포함된 예측 위치별 비트레이트 정보를 바탕으로 비디오 스트리밍 서비스에 대한 비트레이트를 선택한다. 여기서, 모바일 장치(500)는 위치별 비트레이트 정보를 분석하여 비트레이트가 급격히 저하되는 구간이 존재하는지 여부를 판단하고, 비트레이트가 급격히 저하되는 구간이 존재하는 경우, 비트레이트가 급격히 저하되는 시점, 즉 채널 상태가 급격하게 열화되는 이전에 해당 시점에 대응하는 비트레이트보다 낮은 비트레이트를 선택할 수 있다. 이는, 모바일 장치(500)가 터널 진입 등으로 인해 채널 상태가 급격하게 열화될 것으로 예측되는 시점 이전에, 해당 시점(예: 터널 진입 이전 시점)의 채널 상태에 대응하는 품질의 비디오 세그먼트들을 수신하는 대신 보다 낮은 품질로 더 많은 수의 비디오 세그먼트들을 수신하여 채널 상태가 급격하게 열화된 시점에도 사용자에게 끊김없는 비디오 스트림 서비스를 제공하기 위함이다.
이후, 모바일 장치(500)는 528단계에서 선택된 비트레이트로 미디어 세그먼트의 전송을 요청하는 비디오 요청 메시지를 미디어 서버(508)로 전송할 수 있다.
도 8은 본 발명의 일 실시 예에 따른 모바일 장치에서 비디오 스트리밍 서비스를 제공받는 절차를 도시하고 있다.
도 8을 참조하면, 모바일 장치(500)는 801단계에서 위치정보서버(504)로 모바일 장치(500)의 비디오 세그먼트에 대한 이동 경로별 비트레이트를 예측해줄 것을 요청하는 메시지를 송신한다. 이때, 비트레이트 예측 요청 메시지는 도 6에 도시된 바와 같이, 해당 메시지가 비트레이트 예측 요청 메시지임을 나타내는 타입 정보(601), 모바일 장치(500)의 현재 위치 및/혹은 이동 경로 정보(603), 채널 정보(605), 모바일 장치(500)의 식별 정보(607), 현재 시간 정보(609) 및 컨텐츠 URL 혹은 MPD(Media Presentation Description)의 URL 정보(611)를 포함할 수 있다. 비트레이트 예측 요청 메시지는 모바일 장치(500)에서 비디오 스트리밍 서비스를 제공받고자 할 경우, 혹은 비디오 스트리밍 서비스를 제공받는 중에 전송될 수 있으며, 특정 이벤트 발생 시에 전송될 수도 있고, 주기적으로 전송될 수도 있다.
이후, 모바일 장치(500)는 803단계에서 위치정보서버(504)로부터 비트레이트 응답 메시지를 수신한다. 이때, 비트레이트 예측 응답 메시지는 도 7에 도시된 바와 같이, 해당 메시지가 비트레이트 예측 응답 메시지임을 나타내는 타입 정보(701), 모바일 장치(500)의 예측 위치 정보(703), 예측 위치에 대응하는 시간 정보(705), 예측 위치에 대응하는 비트레이트 정보(707)를 포함할 수 있다. 예를 들어, 예측 응답 메시지는 모바일 장치(500)가 특정 시간 이후의 시점을 나타내는 Time 1에 Position 1에 위치할 것으로 예측되고, 모바일 장치(500)가 Time 1의 시점에 Position 1에 위치할 경우 Bitrate 1로 비디오 스트리밍 서비스를 제공받을 수 있을 것으로 예측되을 나타낼 수 있다.
모바일 장치(500)는 805단계에서 비트레이트 응답 메시지를 분석하여 모바일 장치(500)의 이동 경로 내에 비트레이트가 급격하게 감소되는 구간이 존재하는지 여부를 검사한다. 예를 들어, 도 7에 도시된 바와 같은 비트레이트 예측 응답 메시지에서, Time 1에 대응하는 Position 1의 bitrate 1과 Time 2에 대응하는 Position 2의 bitrate 2가 임계값보다 크거나 같은 값이나, Time 3에 대응하는 Position 3의 bitrate 3가 임계값보다 작은 값일 경우 이동 경로 내에 비트레이트가 급격하게 감소되는 구간이 존재하는 것으로 판단할 수 있다. 다른 예로, 도 7에 도시된 바와 같은 비트레이트 예측 응답 메시지에서, bitrate 1, bitrate 2 및 bitrate 3 모두 임계값보다 크거나 같은 값일 경우 이동 경로 내에 비트레이트가 급격하게 감소되는 구간이 존재하지 않는 것으로 판단할 수 있다.
만일, 이동 경로 내에 비트레이트가 급격하게 감소되는 구간이 존재하지 않을 시, 모바일 장치(500)는 809단계로 진행하여 비트레이트 응답 메시지를 기반으로 현재 채널 상태에 대응하는 비트레이트를 선택한다. 이때, 모바일 장치(500)는 비트레이트 응답 메시지에서 현재 시점 및/혹은 현재 위치에 대응하는 비트레이트를 선택할 수 있다. 이후, 모바일 장치(500)는 811단계로 진행하여 선택된 비트레이트를 기반으로 비디오 세그먼트를 전송해줄 것을 요청하는 메시지를 미디어 서버(508)로 전송한다. 이후, 모바일 장치(500)는 801단계로 되돌아가 이하 단계를 재수행할 수 있다. 모바일 장치(500)는 비디오 스트리밍 서비스가 종료되기 전까지 801단계 내지 811단계를 반복하여 수행할 수 있다.
반면, 이동 경로 내에 비트레이트가 급격하게 감소되는 구간이 존재할 시, 모바일 장치(500)는 807단계로 진행하여 비디오 세그먼트를 프리페치하기 위해, 현재 채널 상태에 대응하는 비트레이트보다 낮은 비트레이트를 선택한다. 이후, 모바일 장치(500)는 811단계에서 선택된 비트레이트로 미디어 세그먼트의 전송을 요청하는 비디오 요청 메시지를 미디어 서버(508)로 전송할 수 있다. 예를 들어, 모바일 장치(500)가 t2 시점에 터널 진입 등으로 인해 채널 상태가 급격하게 열화되어 비트레이트가 임계값보다 낮아질 것으로 예상되고, 모바일 장치(500)가 t1 시점에 대해 미리 예측된 bitrate 2를 선택하여 비디오 스트리밍 서비스를 제공받을 경우, t1시점부터 t2 시점 이전까지 특정 수준의 품질을 갖는 5개의 비디오 세그먼트를 수신할 수 있음을 가정한다. 이때, 모바일 장치(500)는 t1 시점에 bitrate 2를 선택하지 않고, bitrate 2보다 낮은 값을 갖는 비트레이트를 선택함으로써, t2시점 이전에 특정 수준 보다 낮은 품질을 갖는 다수 개(5개보다 큰 수)의 비디오 세그먼트를 수신하여, t2 시점에도 사용자에게 끊김없는 비디오 스트림 서비스를 제공할 수 있다.
도 9는 본 발명의 일 실시 예에 따른 위치정보 서버에서 모바일 장치의 비디오 스트리밍 서비스를 제공하기 위한 절차를 도시하고 있다.
도 9를 참조하면, 위치정보서버(504)는 901단계에서 모바일 장치(501)로부터 비디오 세그먼트에 대한 이동 경로별 비트레이트를 예측해줄 것을 요청하는 메시지를 수신한다. 이때, 비트레이트 예측 요청 메시지는 도 6에 도시된 바와 같이, 해당 메시지가 비트레이트 예측 요청 메시지임을 나타내는 타입 정보(601), 모바일 장치(500)의 현재 위치 및/혹은 이동 경로 정보(603), 채널 정보(605), 모바일 장치(500)의 식별 정보(607), 현재 시간 정보(609) 및 컨텐츠 URL 혹은 MPD(Media Presentation Description)의 URL 정보(611)를 포함할 수 있다.
위치정보서버(504)는 903단계에서 모바일 장치(500)의 이동 경로 정보를 포함하는 지리정보 요청 메시지를 지리정보시스템(506)으로 전송하여 모바일 장치(500)의 이동 경로에 대한 추가적인 경로 정보를 획득한다. 예를 들어, 위치정보서버(504)는 도 3a에 도시된 바와 같은 지리정보 요청 메시지를 지리정보시스템(506)으로 전송하고, 그 응답으로 지리정보시스템(506)으로부터 도 3b에 도시된 바와 같은 지리정보 응답 메시지를 수신할 수 있다. 여기서, 지리정보 요청 메시지는 이동 경로에 대한 추가적인 정보로, 이동 경로에 대응하는 지형 정보, 이동 경로에 대응하는 실시간 교통 정보, 이동 경로에 대한 이동 수단 관련 정보 등을 포함할 수 있다.
위치정보서버(504)는 905단계에서 모바일 장치(500)로부터 수신된 정보와 지리정보시스템(506)으로부터 수신된 정보를 바탕으로 현재시점으로부터 세그먼트 단위시간 이후에 모바일 장치(502)가 이동할 위치를 예측한다. 예를 들어, 위치정보서버(504)는 수학식 1을 기반으로, t1, t2, t3, ..., tn 시점 각각에 대응하는 모바일 장치(500)의 위치를 예측한다.
위치정보서버(504)는 907단계에서 특정 세그먼트 시간 이후에 모바일 장치(500)로 서비스를 제공할 것으로 예측되는 기지국(502)을 통해 단말에 대한 네트워크 자원 정보를 획득한다. 여기서, 특정 세그먼트 시간 이후에 모바일 장치(500)로 서비스를 제공할 것으로 예측되는 기지국은 특정 세그먼트 시간 이후에 대응하는 모바일 장치(500)의 예측 위치 정보를 바탕으로 예측될 수 있다. 위치정보서버(504)는 도 4a에 도시된 바와 같은 네트워크 정보 요청 메시지를 기지국(502)으로 전송한 후, 그 응답으로 기지국(502)으로부터 도 4b에 도시된 바와 같은 네트워크 정보 응답 메시지를 수신하여, 단말에 대한 네트워크 자원 정보를 획득할 수 있다. 단말에 대한 네트워크 자원 정보는 기지국(502)이 단위 시간당 모바일 장치(100)로 할당할 수 있는 무선 자원 블럭, 기지국(502)의 서비스 사용자 수, 및 기지국(502)의 혼잡도 중 적어도 하나를 포함할 수 있다.
위치정보서버(504)는 909단계에서 획득된 정보들을 바탕으로 모바일 장치(500)의 예측 위치별 비트레이트를 예측한다. 이때, 위치정보서버(504)는 모바일 장치(500)로부터 수신된 비트레이트 예측 요청 메시지, 지리정보시스템(506)으로부터 수신된 지리정보 응답 메시지, 및 기지국(502)으로부터 수신된 네트워크 정보 응답 메시지에 포함된 정보들을 이용하여 모바일 장치(500)의 이동 경로에 따라 모바일 장치(500)가 특정 시간에 위치할 것으로 예측되는 위치 각각에 대응하는 비트레이트를 결정 혹은 예측할 수 있다.
이후, 위치정보서버(504)는 911단계에서 모바일 장치(500)의 예측 위치별로 예측된 비트레이트의 정보를 포함하는 비트레이트 예측 응답 메시지를 모바일 장치(500)로 전송한다. 이때, 비트레이트 예측 응답 메시지는 도 7에 도시된 바와 같이, 해당 메시지가 비트레이트 예측 응답 메시지임을 나타내는 타입 정보(701), 모바일 장치(500)의 예측 위치 정보(703), 예측 위치에 대응하는 시간 정보(705), 예측 위치에 대응하는 비트레이트 정보(707)를 포함할 수 있다. 예를 들어, 예측 응답 메시지는 모바일 장치(500)가 특정 시간 이후의 시점을 나타내는 Time 1에 Position 1에 위치할 것으로 예측되고, 모바일 장치(500)가 Time 1의 시점에 Position 1에 위치할 경우 Bitrate 1로 비디오 스트리밍 서비스를 제공받을 수 있을 것으로 예측됨을 나타낼 수 있다. 이후, 위치정보서버(504)는 본 발명의 실시 예에 따른 절차를 종료한다.
상술한 일 실시 예에서는, 위치정보서버(504), 지리정보서버(506), 및 미디어서버(508)가 각각 독립적으로 구분되는 경우를 예로 들어 설명하였으나, 위치정보서버(504), 지리정보서버(506), 및 미디어서버(508) 중 적어도 두개의 서버가 하나의 서버로 구성될 수도 있을 것이다.
도 10은 모바일 장치의 위치에 따른 종래 방식과 본 발명의 비트레이트 선택 그래프를 도시하고 있다.
도 10을 참조하면, 모바일 장치(500)가 t5 시점에 터널에 진입하여, t5시점부터 t8시점까지 터널 내에 위치하여 채널 상태가 극심하게 열화되는 상황을 가정한다. 이와 같은 상황에서 종래 기술에 따라 비디오 스트리밍 서비스를 제공받는 경우, 모바일 장치(500)는 현재 시간을 기준으로 비트레이트를 선택하므로, t5시점부터 t8시점까지 열악한 채널 상태로 인해 비디오 스트리밍 서비스를 제공받을 수 없게 된다.
반면, 본 발명의 일 실시 예에 따라 비디오 스트리밍 서비스를 제공받는 경우, 모바일 장치(500)는 t5 시점 이전(t1 내지 t4 시점 사이)에 t5시점부터 t8시점까지 열악한 채널 상태로 인해 낮은 비트레이트가 예측된 것을 인지할 수 있다. 이에 따라, 본 발명의 일 실시 예에 따른 모바일 장치(500)는 t4 시점에 해당 채널 상태에 따라 q2 품질의 비디오 세그먼트를 N개 수신할 수 있는 비트레이트를 선택하지 않고, q2 품질보다 낮은 q1 품질의 비디오 세그먼트를 N개 보다 많이 수신할 수 있는 보다 낮은 비트레이트를 선택하여, t5시점 이전에 다수 개의 비디오 세그먼트를 미리 수신할 수 있고, 이에 따라 t4 시점부터 t8시점까지 비디오 스트리밍 서비스를 끊김없이 제공할 수 있다. 여기서, t4 시점부터 t5시점까지 끊김없는 비디오 스트리밍 서비스를 제공하기 위해 최소 N개의 비디오 세그먼트가 필요하고, t5시점부터 t8시점까지 끊김없는 비디오 스트리밍 서비스를 제공하기 위해 최소 M개의 비디오 세그먼트가 필요한 경우, 모바일 장치(500)는 t4 시점부터 t5시점까지 N+M개의 비디오 세그먼트를 수신할 수 있는 비트레이트를 선택할 수 있다.
다음으로, 하기 도 11 내지 도 17을 참조하여, 두 번째 실시 예에 대해 상세히 설명하기로 한다.
도 11은 본 발명의 다른 실시 예에 따른 모바일 네트워크의 구조를 도시하고 있다.
도 11을 참조하면, 모바일 장치(1100)는 비디오 스트리밍 서비스 이용 중에 비디오 스트리밍 서비스에 대한 비트레이트 예측을 위해, 위치정보서버(104)가 모바일 장치(100)의 이동 경로에 대한 채널 상태를 예측하는데 필요한 정보들을 주기적으로 보고한다(1110단계). 이때, 주기적으로 보고되는 메시지는 도 2에 도시된 바와 같이, 구성될 수 있다. 위치정보서버(1102)는 모바일 장치(1100)로부터 주기적으로 보고되는 메시지를 이용하여 모바일 장치의 핸드오버를 예측한다(1112단계). 즉, 위치정보서버(1102)는 현재시점으로부터 세그먼트 단위시간 이후에 모바일 장치(1100)가 이동할 위치를 예측하고, 예측된 위치를 바탕으로 모바일 장치(1100)의 핸드오버 여부를 예측할 수 있다. 예를 들어, 위치정보서버(1102)는 t2 시점에 예측되는 모바일 장치(1100)의 위치가 특정 AP(1104)의 커버리지 내에 해당할 경우, 모바일 장치(1100)가 t2 시점에 현재 접속 중인 서빙 기지국(1101)으로부터 AP(1104)로 핸드오버를 수행할 것을 예상할 수 있다. 위치정보서버(104)는 모바일 장치(1100)의 핸드오버가 예상되는 경우, 예상되는 핸드오버 타겟 기지국인 AP(1104)로 모바일 장치(1100)가 t2 시점에 요청할 것으로 예상되는 비디오 세그먼트들을 프리페치할 것을 요청하는 신호를 전송한다(1114단계).
AP(1104)는 위치정보서버(1102)로부터 프리페치 신호가 수신되면, 미디어 서버(1108)로 모바일 장치(1100)가 t2 시점에 요청할 것으로 예상되는 비디오 세그먼트들을 전송해줄 것을 요청하여, 미디어 서버(1108)로부터 비디오 세그먼트들을 수신하여 저장한다(1116단계). 이때, AP(1104)는 AP(1104)에 결합된 CDN(contents delivery network) 혹은 캐시(cache, 1106)에 비디오 세그먼트들을 저장할 수 있다. 즉, AP(1104)는 t2 시점이 되기 이전에, 미디어 서버(1108)로부터 모바일 장치(1100)가 t2 시점에 필요로할 것으로 예상되는 비디오 세그먼트들을 수신하여 저장할 수 있다.
이후, 모바일 장치(1100)는 AP(1104)로 핸드오버하고(1118단계), AP(1104)로부터 비디오 세그먼트들을 수신하여 끊김없는 비디오 스트리밍 서비스를 제공받을 수 있다.
도 12는 본 발명의 다른 실시 예에 따른 모바일 네트워크에서 모바일 장치의 핸드오버에 따라 비디오 스트리밍 서비스를 제공하는 시그널링을 도시하고 있다.
도 12를 참조하면, 모바일 장치(1200)는 비디오 스트리밍 서비스 이용 중에 비디오 스트리밍 서비스에 대한 비트레이트 예측을 위해, 1220단계에서 모바일 장치(1200)의 이동 경로에 대한 채널 상태를 예측하는데 필요한 정보들을 보고하는 메시지를 위치정보서버(1206)로 전송한다. 이때, 보고 메시지는 도 2에 도시된 바와 같이 구성되며, 주기적으로 전송될 수 있다.
위치정보서버(1206)는 모바일 장치(1200)로부터 비트레이트 예측 요청 메시지를 수신하고, 1222단계에서 모바일 장치(1200)의 이동 경로 정보를 포함하는 지리정보 요청 메시지를 지리정보시스템(1208)으로 전송하여 모바일 장치(1200)의 이동 경로에 대한 추가적인 경로 정보를 요청한다. 예를 들어, 지리정보 요청 메시지는 도 3a에 도시된 바와 같이 구성될 수 있다. 지리정보시스템(1208)은 위치정보서버(1206)로부터 지리정보 요청 메시지를 수신하고, 수신된 지리정보 요청 메시지로부터 모바일 장치(1200)의 이동 경로 정보를 추출하고, 추출된 이동 경로 정보에 대응하는 추가 정보를 미리 구축된 데이터베이스에서 검색한 후, 1224단계에서 검색된 추가 정보를 포함하는 지리정보 응답 메시지를 위치정보서버(1206)로 전송한다. 예를 들어, 지리정보 응답 메시지는 도 3b에 도시된 바와 같이 구성될 수 있다. 여기서, 지리정보시스템(1208)은 지형정보 시스템, 교통량 정보 시스템, 철도노선 시스템, 버스노선 시스템 등과 같은 시스템일 수 있으며, 이때 이동 경로에 대한 추가적인 정보는, 이동 경로에 대응하는 지형 정보, 이동 경로에 대응하는 실시간 교통 정보, 이동 경로에 대한 이동 수단 관련 정보 등을 포함할 수 있다.
위치정보서버(1206)는 1226단계에서 모바일 장치(1200)로부터 수신된 정보와 지리정보시스템(1208)으로부터 수신된 정보를 바탕으로 현재시점으로부터 세그먼트 단위시간 이후에 모바일 장치(1200)가 이동할 위치를 예측한다. 예를 들어, 위치정보서버(1206)는 모바일 장치(1200)로부터 주기적으로 보고된 비트레이트 요청 메시지 내의 위치 정보를 이용하여, 수학식 1에 나타낸 바와 같이, 모바일 장치(1200)의 이동 속도를 계산하고, 계산된 이동 속도를 바탕으로 특정 세그먼트 시간 이후에 모바일 장치(1200)의 위치 좌표를 계산할 수 있다.
이후, 위치정보서버(1206)는 1228단계에서 모바일 장치(1200)로부터 주기적으로 보고되는 메시지를 이용하여 모바일 장치의 핸드오버를 예측한다. 즉, 위치정보서버(1206)는 현재시점으로부터 세그먼트 단위시간 이후에 모바일 장치(1200)가 이동할 위치를 예측하고, 예측된 위치를 바탕으로 모바일 장치(1200)의 핸드오버 여부를 예측할 수 있다. 예를 들어, 특정 시점에 예측되는 모바일 장치(1200)의 위치가 타겟 기지국(1202)의 커버리지 내에 해당할 경우, 위치정보서버(1206)는 모바일 장치(1200)가 특정 시점에 현재 접속 중인 서빙 기지국(미도시)으로부터 타겟 기지국(1202)으로 핸드오버를 수행할 것을 예상할 수 있다.
위치정보서버(1206)는 모바일 장치(1200)가 타겟 기지국(1202)으로 핸드오버할 것으로 예상되는 경우, 1230단계에서 타겟 기지국(1202)으로 네트워크 정보 및 캐시 정보 요청 메시지를 전송한다. 네트워크 정보 및 캐시 정보 요청 메시지는 도 13a에 도시된 바와 같이, 해당 메시지가 모바일 장치(1200)에 대한 정보 요청 메시지임을 나타내는 타입 정보(1300), 모바일 장치(1200)의 식별 정보(1302), 모바일 장치(1200)의 자원 관련 정보(1304), 캐시 ID 요청 플래그(1306)를 포함할 수 있다. 여기서, 모바일 장치(1200)의 자원 관련 정보(1304)는 모바일 장치의 QCI(QoS Class Identifier) 혹은 ARP(Allocation and Retention Priorty)일 수 있고, 캐시 ID 요청 플래그는 1bit 크기의 플래그로서, 타겟 기지국(1202)의 캐시 ID를 요청함을 표시할 수 있다. 즉, 위치정보서버(1206)는 도 13a에 도시된 바와 같은 네트워크 정보 및 캐시 정보 요청 메시지를 타겟 기지국(1202)으로 전송하여, 타겟 기지국(1202)이 단말로 할당할 수 있는 네트워크 자원 정보와, 타겟 기지국(1202)에 위치한 캐시(혹은 타겟 캐시)의 주소를 요청할 수 있다.
타겟 기지국(1202)은 위치정보서버(1206)로부터 네트워크 정보 및 캐시 정보 요청 메시지를 수신한 후, 네트워크 정보 요청 메시지에서 모바일 장치(1202)의 식별 정보 및 자원 할당 관련 정보를 추출한 후, 추출된 정보를 바탕으로 모바일 장치(1200)로 할당할 무선 자원을 결정할 수 있다. 또한, 타겟 기지국(1202)은 타겟 기지국(1202)에 결합된 캐시 장비(1204)의 ID(혹은 IP 주소)를 확인한다. 타겟 기지국(1202)은 1232단계에서 모바일 장치(1200)로 할당할 무선 자원에 대한 정보 및 캐시 ID를 포함하는 네트워크 정보 및 캐시 정보 응답 메시지를 위치정보서버(1206)로 전송한다. 이때, 네트워크 정보 및 캐시 정보 응답 메시지는 도 13b에 도시된 바와 같이, 해당 메시지가 모바일 장치(1200)에 대한 응답 메시지임을 나타내는 타입 정보(1310)와, 모바일 장치(1200)의 식별 정보(1312), 네트워크 자원 정보(1314), 캐시 ID 정보(1316)를 포함할 수 있다. 이때, 네트워크 자원 정보(1314)는 타겟 기지국(1202)이 단위 시간당 모바일 장치(1200)로 할당할 수 있는 무선 자원 블럭, 타겟 기지국(1202)의 서비스 사용자 수, 및 타겟 기지국(1202)의 혼잡도 중 적어도 하나를 포함할 수 있다.
위치정보서버(1206)는 1234단계에서 모바일 장치(1200)의 예측 위치별 비트레이트를 예측한다. 이때, 위치정보서버(1206)는 모바일 장치(1200)로부터 수신된 비트레이트 예측 요청 메시지, 지리정보시스템(1208)으로부터 수신된 지리정보 응답 메시지, 및 타겟 기지국(1202)으로부터 수신된 네트워크 정보 및 캐시정보 응답 메시지에 포함된 정보들을 이용하여 모바일 장치(1200)의 이동 경로에 따라 모바일 장치(1200)가 특정 시간에 위치할 것으로 예측되는 위치 각각에 대응하는 비트레이트를 결정 혹은 예측할 수 있다.
이후, 위치정보서버(1206)는 타겟 기지국(1202)으로부터 획득한 캐시 ID 정보를 이용하여 1236단계에서 모바일 장치(1200)가 핸드오버 이후에 요청할 것으로 예상되는 비디오 세그먼트들을 프리페치할 것을 요청하는 메시지를 타겟 기지국(1202)에 결합된 타겟 캐시 장비(1204)로 전송한다. 여기서, 프리페치 요청 메시지는 도 13c에 도시된 바와 같이, 해당 메시지가 캐시 장비(1204)로의 요청 메시지임을 나타내는 타입 정보(1320), 모바일 장치(1200)가 비디오 스트리밍 서비스를 통해 이용 중인 컨텐츠의 정보(예: 컨텐츠 URL)(1322), 및 모바일 장치(1200)의 정보(1324)를 포함하여 구성될 수 있다.
위치정보서버(1206)로부터 프리페치 요청 메시지를 수신한 타겟 캐시 장비(1204)는 1238단계에서 프리페치를 수행할 것임을 알리는 응답 메시지를 위치정보서버(1208)로 전송한다. 이후, 타겟 캐시 장비(1204)는 1240단계에서 모바일 장치(1200)가 핸드오버 후에 요청할 것으로 예상되는 비디오 세그먼트들을 전송해줄 것을 요청하는 비디오 요청 메시지를 미디어 서버(1210)에 전송한다. 이때, 비디오 요청 메시지는 해당 모바일 장치(1200)의 식별 정보 및 해당 컨텐츠 정보를 포함할 수 있다. 미디어 서버(1210)는 1242단계에서 모바일 장치(1200)가 핸드오버 후에 요청할 것으로 예상되는 비디오 세그먼트들을 포함하는 비디오 응답 메시지를 타겟 캐시 장비(1204)로 전송하고, 타겟 캐시 장비(1204)는 모바일 장치(1200)가 타겟 기지국(1202)으로 핸드오버하기 이전에 미디어 서버(1210)로부터 수신되는 비디오 세그먼트들을 저장한다.
위치정보서버(1206)는 1244단계에서 모바일 장치(1200)의 예측 위치별로 예측된 비트레이트의 정보와 예측 위치별 타겟 캐시 정보를 포함하는 비트레이트 예측 응답 메시지를 모바일 장치(1200)로 전송한다. 이때, 비트레이트 예측 응답 메시지는 도 14에 도시된 바와 같이, 해당 메시지가 비트레이트 예측 응답 메시지임을 나타내는 타입 정보(1400), 모바일 장치(1200)의 예측 위치 정보(1401), 예측 위치에 대응하는 시간 정보(1402), 예측 위치에 대응하는 비트레이트 정보(1403) 및 예측 위치에 대응하는 캐시 ID 정보(1404)를 포함할 수 있다. 예를 들어, 예측 응답 메시지는 모바일 장치(1200)가 특정 시간 이후의 시점을 나타내는 Time 1에 Position 1에 위치할 것으로 예측되고, 모바일 장치(1200)가 Time 1의 시점에 Position 1에 위치할 경우, 해당 캐시 ID를 갖는 타겟 캐시 장비로부터 Bitrate 1로 비디오 스트리밍 서비스를 제공받을 수 있을 것으로 예측됨을 나타낼 수 있다.
모바일 장치(1200)는 위치정보서버(1206)로부터 비트레이트 예측 응답 메시지를 수신하고, 위치 이동에 따라 서빙 기지국(미도시)에서 타겟 기지국(1202)으로 핸드오버를 수행한다. 이후, 모바일 장치(1200)는 1246단계에서 비트레이트 예측 응답 메시지에 포함된 예측 위치별 비트레이트 정보를 바탕으로 비디오 스트리밍 서비스에 대한 비트레이트를 선택한다. 모바일 장치(1200)는 현재 위치 및 선택된 비트레이트에 대응하는 캐시 ID 정보가 존재하는 것을 판단하고, 1248단계에서 해당 캐시 ID를 갖는 타겟 캐시 장비(1204)로 선택된 비트레이트로 비디오 세그먼트를 전송해줄 것을 요청하는 비디오 요청 메시지를 전송한다. 그러면, 타겟 캐시 장비(1204)는 미리 저장된 비디오 세그먼트들을 포함하는 비디오 응답 메시지를 모바일 장치(1200)로 전송할 수 있다.
도 15는 본 발명의 다른 실시 예에 따른 모바일 장치에서 비디오 스트리밍 서비스를 제공받는 절차를 도시하고 있다.
도 15를 참조하면, 모바일 장치(1200)는 비디오 스트리밍 서비스 이용 중에 비디오 스트리밍 서비스에 대한 비트레이트 예측을 위해, 1501단계에서 모바일 장치(1200)의 이동 경로에 대한 채널 상태를 예측하는데 필요한 정보들을 보고하는 메시지를 위치정보서버(1206)로 전송한다. 이때, 보고 메시지는 도 6에 도시된 바와 같이 구성될 수 있다. 이때, 보고 메시지는 모바일 장치(1200)에서 비디오 스트리밍 서비스를 제공받고자 할 경우, 혹은 비디오 스트리밍 서비스를 제공받는 중에 전송될 수 있으며, 특정 이벤트 발생 시에 전송될 수도 있고, 주기적으로 전송될 수도 있다.
이후, 모바일 장치(1200)는 1503단계에서 위치정보서버(1206)로부터 비트레이트 응답 메시지를 수신한다. 이때, 비트레이트 예측 응답 메시지는 도 14에 도시된 바와 같이, 해당 메시지가 비트레이트 예측 응답 메시지임을 나타내는 타입 정보(1400), 모바일 장치(1200)의 예측 위치 정보(1401), 예측 위치에 대응하는 시간 정보(1402), 예측 위치에 대응하는 비트레이트 정보(1403) 및 예측 위치에 대응하는 캐시 ID 정보(1404)를 포함할 수 있다. 예를 들어, 예측 응답 메시지는 모바일 장치(1200)가 특정 시간 이후의 시점을 나타내는 Time 1에 Position 1에 위치할 것으로 예측되고, 모바일 장치(1200)가 Time 1의 시점에 Position 1에 위치할 경우, 해당 캐시 ID를 갖는 타겟 캐시 장비로부터 Bitrate 1로 비디오 스트리밍 서비스를 제공받을 수 있을 것으로 예측됨을 나타낼 수 있다.
모바일 장치(1200)는 1505단계에서 위치 이동에 의해 타겟 기지국(1202)으로 핸드오버를 수행하고, 1507단계에서 비트레이트 응답 메시지를 기반으로 현재 위치에 대응하는 비트레이트를 선택한다. 이때, 비트레이트 응답 메시지에는 현재 위치에 대응하는 타겟 기지국(1202)의 캐시 ID 정보가 존재할 수 있다.
모바일 장치(1200)는 1509단계에서 현재 위치에 대응하는 캐시 ID 및 선택된 비트레이트를 이용하여 타겟 캐시 장비(1204)로 비디오 세그먼트의 전송을 요청하고, 타겟 캐시 장비(1204)로부터 비디오 세그먼트를 수신할 수 있다. 이후, 모바일 장치(1200)는 본 발명의 다른 실시 예에 따른 알고리즘을 종료한다.
도 16은 본 발명의 다른 실시 예에 따른 위치정보 서버에서 모바일 장치로 비디오 스트리밍 서비스를 제공하기 위한 절차를 도시하고 있다.
도 16을 참조하면, 위치정보서버(1206)는 1601단계에서 모바일 장치(1200)로부터 비디오 세그먼트에 대한 이동 경로별 비트레이트를 예측해줄 것을 요청하는 메시지를 수신한다. 이때, 비트레이트 예측 요청 메시지는 도 6에 도시된 바와 같이 구성될 수 있다.
위치정보서버(1206)는 1603단계에서 모바일 장치(1200)의 이동 경로 정보를 포함하는 지리정보 요청 메시지를 지리정보시스템(1208)으로 전송하여 모바일 장치(1200)의 이동 경로에 대한 추가적인 경로 정보를 획득한다. 예를 들어, 위치정보서버(1206)는 도 3a에 도시된 바와 같은 지리정보 요청 메시지를 지리정보시스템(1208)으로 전송하고, 그 응답으로 지리정보시스템(1208)으로부터 도 3b에 도시된 바와 같은 지리정보 요청 메시지를 수신할 수 있다. 여기서, 지리정보 요청 메시지는 이동 경로에 대한 추가적인 정보로, 이동 경로에 대응하는 지형 정보, 이동 경로에 대응하는 실시간 교통 정보, 이동 경로에 대한 이동 수단 관련 정보 등을 포함할 수 있다.
위치정보서버(1206)는 1605단계에서 모바일 장치(1200)로부터 수신된 정보와 지리정보시스템(1208)으로부터 수신된 정보를 바탕으로 현재시점으로부터 세그먼트 단위시간 이후에 모바일 장치(1200)가 이동할 위치를 예측한다. 예를 들어, 위치정보서버(1206)는 수학식 1을 기반으로, t1, t2, t3, ..., tn 시점 각각에 대응하는 모바일 장치(1200)의 위치를 예측한다.
위치정보서버(1206)는 1607단계에서 모바일 장치(1200)로부터 주기적으로 보고되는 메시지를 이용하여 모바일 장치(1200)의 핸드오버를 예측한다. 즉, 위치정보서버(1206)는 현재시점으로부터 세그먼트 단위시간 이후에 모바일 장치(1200)가 이동할 위치를 예측하고, 예측된 위치를 바탕으로 모바일 장치(1200)의 핸드오버 여부를 예측할 수 있다. 예를 들어, 특정 시점에 예측되는 모바일 장치(1200)의 위치가 타겟 기지국(1202)의 커버리지 내에 해당할 경우, 위치정보서버(1206)는 모바일 장치(1200)가 특정 시점에 현재 접속 중인 서빙 기지국(미도시)으로부터 타겟 기지국(1202)으로 핸드오버를 수행할 것을 예상할 수 있다.
이후, 위치정보서버(1206)는 1609단계에서 모바일 장치(1200)가 핸드오버할 것으로 예측되는 타겟 기지국(1202)을 통해 단말에 대한 네트워크 자원 정보 및 타겟 기지국에 결합된 캐시 장비의 ID(혹은 IP 주소)를 획득한다. 위치정보서버(1206)는 도 13a에 도시된 바와 같은 네트워크 정보 및 캐시정보 요청 메시지를 타겟 기지국(1202)으로 전송한 후, 그 응답으로 타겟 기지국(1202)으로부터 도 13b에 도시된 바와 같은 네트워크 정보 및 캐시 정보 응답 메시지를 수신하여, 단말에 대한 네트워크 자원 정보 및 타겟 캐시 장비의 정보를 획득할 수 있다. 여기서, 단말에 대한 네트워크 자원 정보는 타겟 기지국(1202)이 단위 시간당 모바일 장치(1200)로 할당할 수 있는 무선 자원 블럭, 타겟 기지국(1202)의 서비스 사용자 수, 및 기지국(1202)의 혼잡도 중 적어도 하나를 포함할 수 있다.
이후, 위치정보서버(1206)는 1611단계에서 획득된 정보들을 바탕으로 모바일 장치(1200)의 예측 위치별 비트레이트를 예측한다. 이때, 위치정보서버(1206)는 모바일 장치(1200)로부터 수신된 비트레이트 예측 요청 메시지, 지리정보시스템(1208)으로부터 수신된 지리정보 응답 메시지, 및 타겟 기지국(1202)으로부터 수신된 네트워크 정보 및 캐시정보 응답 메시지에 포함된 정보들을 이용하여 모바일 장치(1200)의 이동 경로에 따라 모바일 장치(1200)가 특정 시간에 위치할 것으로 예측되는 위치 각각에 대응하는 비트레이트를 결정 혹은 예측할 수 있다.
이후, 위치정보서버(1206)는 타겟 기지국(1202)으로부터 획득한 캐시 ID 정보를 이용하여 1613단계에서 모바일 장치(1200)가 핸드오버 이후에 요청할 것으로 예상되는 비디오 세그먼트들을 프리페치할 것을 요청하는 메시지를 타겟 기지국(1202)에 결합된 타겟 캐시 장비(1204)로 전송하고, 타겟 캐시 장비(1204)로부터 응답 메시지를 수신한다. 여기서, 프리페치 요청 메시지는 도 13c에 도시된 바와 같이, 해당 메시지가 캐시 장비(1204)로의 요청 메시지임을 나타내는 타입 정보(1320), 모바일 장치(1200)가 비디오 스트리밍 서비스를 통해 이용 중인 컨텐츠의 정보(예: 컨텐츠 URL)(1322), 및 모바일 장치(1200)의 정보(1324)를 포함하여 구성될 수 있다.
위치정보서버(1206)는 1615단계에서 모바일 장치(1200)의 예측 위치별로 예측된 비트레이트의 정보와 예측 위치별 타겟 캐시 정보를 포함하는 비트레이트 예측 응답 메시지를 모바일 장치(1200)로 전송한다. 이때, 비트레이트 예측 응답 메시지는 도 14에 도시된 바와 같이, 해당 메시지가 비트레이트 예측 응답 메시지임을 나타내는 타입 정보(1400), 모바일 장치(1200)의 예측 위치 정보(1401), 예측 위치에 대응하는 시간 정보(1402), 예측 위치에 대응하는 비트레이트 정보(1403) 및 예측 위치에 대응하는 캐시 ID 정보(1404)를 포함할 수 있다. 예를 들어, 예측 응답 메시지는 모바일 장치(1200)가 특정 시간 이후의 시점을 나타내는 Time 1에 Position 1에 위치할 것으로 예측되고, 모바일 장치(1200)가 Time 1의 시점에 Position 1에 위치할 경우, 해당 캐시 ID를 갖는 타겟 캐시 장비로부터 Bitrate 1로 비디오 스트리밍 서비스를 제공받을 수 있을 것으로 예측됨을 나타낼 수 있다. 이후, 위치정보서버(1206)는 본 발명의 다른 실시 예에 따른 절차를 종료한다.
도 17은 본 발명의 다른 실시 예에 따른 타겟 기지국에서 모바일 장치의 비디오 스트리밍 서비스를 제공하기 위한 프리페칭 절차를 도시하고 있다.
도 17을 참조하면, 타겟 기지국(1202)은 1701단계에서 위치정보서버(1206)로부터 네트워크 정보 및 캐시 정보를 요청하는 메시지를 수신한다. 네트워크 정보 및 캐시 정보 요청 메시지는 도 13a에 도시된 바와 같이, 해당 메시지가 모바일 장치(1200)에 대한 정보 요청 메시지임을 나타내는 타입 정보(1300), 모바일 장치(1200)의 식별 정보(1302), 모바일 장치(1200)의 자원 관련 정보(1304), 캐시 ID 요청 플래그(1306)를 포함할 수 있다. 여기서, 모바일 장치(1200)의 자원 관련 정보(1304)는 모바일 장치의 QCI(QoS Class Identifier) 혹은 ARP(Allocation and Retention Priorty)일 수 있고, 캐시 ID 요청 플래그는 1bit 크기의 플래그로서, 타겟 기지국(1202)의 캐시 ID를 요청함을 표시할 수 있다. 즉, 타겟 기지국(1701)은 도 13a에 도시된 바와 같은 네트워크 정보 및 캐시 정보 요청 메시지를 수신하여, 타겟 기지국(1202)이 단말로 할당할 수 있는 네트워크 자원 정보와, 타겟 기지국(1202)에 위치한 캐시(혹은 타겟 캐시)의 주소를 전송해줄 것을 요청받을 수 있다.
이후, 타겟 기지국(1202)은 네트워크 정보 및 캐시 정보 요청 메시지에서 모바일 장치(1202)의 식별 정보 및 자원 할당 관련 정보를 추출한 후, 추출된 정보를 바탕으로 모바일 장치(1200)로 할당할 무선 자원을 결정하고, 타겟 기지국(1202)에 결합된 캐시 장비(1204)의 ID(혹은 IP 주소)를 확인한다. 타겟 기지국(1202)은 1703단계에서 모바일 장치(1200)로 할당할 무선 자원에 대한 정보 및 캐시 ID를 포함하는 네트워크 정보 및 캐시 정보 응답 메시지를 위치정보서버(1206)로 전송한다. 이때, 네트워크 정보 및 캐시 정보 응답 메시지는 도 13b에 도시된 바와 같이, 해당 메시지가 모바일 장치(1200)에 대한 응답 메시지임을 나타내는 타입 정보(1310)와, 모바일 장치(1200)의 식별 정보(1312), 네트워크 자원 정보(1314), 캐시 ID 정보(1316)를 포함할 수 있다. 이때, 네트워크 자원 정보(1314)는 타겟 기지국(1202)이 단위 시간당 모바일 장치(1200)로 할당할 수 있는 무선 자원 블럭, 타겟 기지국(1202)의 서비스 사용자 수, 및 타겟 기지국(1202)의 혼잡도 중 적어도 하나를 포함할 수 있다.
타겟 기지국(1202)은 1705단계에서 위치정보서버(1206)로부터 모바일 장치(1200)가 핸드오버 이후에 요청할 것으로 예상되는 비디오 세그먼트들을 프리페치할 것을 요청하는 메시지를 수신한다. 즉, 타겟 기지국(1202)은 타겟 기지국(1202)에 결합된 타겟 캐시 장비(1204)로 프리페치 요청 메시지가 수신됨을 감지할 수 있다. 여기서, 프리페치 요청 메시지는 도 13c에 도시된 바와 같이, 해당 메시지가 캐시 장비(1204)로의 요청 메시지임을 나타내는 타입 정보(1320), 모바일 장치(1200)가 비디오 스트리밍 서비스를 통해 이용 중인 컨텐츠의 정보(예: 컨텐츠 URL)(1322), 및 모바일 장치(1200)의 정보(1324)를 포함하여 구성될 수 있다.
프리페치 요청 메시지가 수신되었음을 인지한 타겟 기지국(1202)은 타겟 캐시 장비(1204)를 제어하여 1707단계에서 프리페치를 수행할 것임을 알리는 응답 메시지를 위치정보서버(1208)로 전송한다. 이후,타겟 기지국(1202)은 타겟 캐시 장비(1204)를 제어하여 1709단계에서 모바일 장치(1200)가 핸드오버 후에 요청할 것으로 예상되는 비디오 세그먼트들을 전송해줄 것을 요청하는 비디오 요청 메시지를 미디어 서버(1210)에 전송하고, 미디어 서버(1210)로부터 요청한 비디오 세그먼트들을 포함하는 비디오 응답 메시지를 수신하여, 비디오 세그먼트들을 타겟 캐시 장비(1204)에 저장한다. 이때, 비디오 요청 메시지는 해당 모바일 장치(1200)의 식별 정보 및 해당 컨텐츠 정보를 포함할 수 있다.
이후, 타겟 기지국(1202)은 타겟 캐시 장비(1204)로 특정 비트레이트로 비디오 세그먼트를 전송해줄 것을 요청하는 비디오 요청 메시지를 수신하고, 타겟 캐시 장비(1204)에 미리 저장된 비디오 세그먼트들을 포함하는 비디오 응답 메시지를 모바일 장치(1200)로 전송할 수 있다.
이후, 타겟 기지국(1202)은 본 발명의 다른 실시 예에 따른 절차를 종료한다.
상술한 실시 예에서는, 위치정보서버(1206), 지리정보서버(1208), 및 미디어서버(1210)가 각각 독립적으로 구분되는 경우를 예로 들어 설명하였으나, 위치정보서버(1206), 지리정보서버(1208), 및 미디어서버(1210) 중 적어도 두개의 서버가 하나의 서버로 구성될 수도 있을 것이다. 또한, 상술한 설명에서는 타겟 기지국(1202)과 타겟 캐시 장비(1204)가 물리적으로 구분되는 경우를 예로 들어 설명하여으나, 타겟 캐시 장비(1204)는 타겟 기지국(1202) 내에 설치될 수도 있다.
도 18은 본 발명의 실시 예에 따른 모바일 장치의 블럭 구성을 도시하고 있다.
도 18을 참조하면, 모바일 장치는 제어부(1810)와 송수신부(1820)를 포함하여 구성될 수 있다.
제어부(1810)는 모바일 장치의 전반적인 동작을 제어 및 처리하며, 특히, 위치 정보 관리부(1812) 및 비디오 세그먼트 결정부(1813)를 포함함으로써, 비디오 스트리밍 서비스를 제공받기 위한 동작을 제어 및 처리한다.
위치 정보 관리부(1812)는 모바일 장치의 비디오 스트리밍 서비스 이용 중에 비디오 스트리밍 서비스에 대한 비트레이트 예측을 위해, 모바일 장치(1200)의 이동 경로에 대한 채널 상태를 예측하는데 필요한 정보들을 보고하는 메시지를 위치정보서버로 전송하기 위한 기능을 제어 및 처리한다. 이때, 보고 메시지는 도 2 혹은 도 6에 도시된 바와 같이 구성될 수 있다. 보고 메시지는 모바일 장치에서 비디오 스트리밍 서비스를 제공받고자 할 경우, 혹은 비디오 스트리밍 서비스를 제공받는 중에 전송될 수 있으며, 특정 이벤트 발생 시에 전송될 수도 있고, 주기적으로 전송될 수도 있다.
또한, 비디오 세그먼트 결정부(1813)는 위치정보서버로부터 비트레이트 응답 메시지가 수신될 시, 현재 위치에 대응하는 비트레이트를 선택하고, 선택된 비트레이트로 비디오 세그먼트를 수신하기 위한 기능을 제어 및 처리한다. 이때, 비트레이트 응답 메시지는 도 7 혹은 14에 도시된 바와 같이 구성될 수 있다. 본 발명의 일 실시 예에 따라, 비디오 세그먼트 결정부(1813)는 비트레이트 응답 메시지를 분석하여 모바일 장치의 이동 경로 내에 비트레이트가 급격하게 감소되는 구간이 존재하는지 여부를 검사한다. 만일, 이동 경로 내에 비트레이트가 급격하게 감소되는 구간이 존재하지 않을 시, 비디오 세그먼트 결정부(1813)는 비트레이트 응답 메시지를 기반으로 현재 채널 상태에 대응하는 비트레이트를 선택하여 선택된 비트레이트를 기반으로 비디오 세그먼트를 전송해줄 것을 요청하는 메시지를 미디어 서버로 전송하기 위한 기능을 제어 및 처리할 수 있다. 반면, 이동 경로 내에 비트레이트가 급격하게 감소되는 구간이 존재할 시, 비디오 세그먼트 결정부(1813)는 비디오 세그먼트를 프리페치하기 위해, 현재 채널 상태에 대응하는 비트레이트보다 낮은 비트레이트를 선택하고, 선택된 비트레이트로 미디어 세그먼트의 전송을 요청하는 비디오 요청 메시지를 미디어 서버로 전송하기 위한 기능을 제어 및 처리할 수 있다. 본 발명의 다른 실시 예에 따라, 비디오 세그먼트 결정부(1813)는 현재 위치에 대응하는 비트레이트를 선택하고, 현재 위치에 대응하는 타겟 기지국의 캐시 ID 정보가 존재하는 경우, 현재 위치에 대응하는 캐시 ID 및 선택된 비트레이트를 이용하여 타겟 캐시 장비로 비디오 세그먼트의 전송을 요청하고, 타겟 캐시 장비로부터 비디오 세그먼트를 수신하기 위한 기능을 제어 및 처리한다.
송수신부(1820)는 제어부(1810)의 제어에 따라 신호 혹은 메시지를 송수신한다. 예를 들어 송수신부(1820)는 기지국, 위치정보서버 및/혹은 미디어 서버와 비디오 스트리밍 서비스를 위한 메시지들을 송수신한다.
도 19는 본 발명의 실시 예에 따른 위치정보 서버의 블럭 구성을 도시하고 있다.
도 19를 참조하면, 위치정보서버는 제어부(1910)와 송수신부(1920)를 포함하여 구성될 수 있다.
제어부(1910)는 위치정보 서버의 전반적인 동작을 제어 및 처리하며, 특히, 비트레이트 예측부(1912) 및 정보 수집부(1913)를 포함함으로써, 모바일 장치의 비디오 스트리밍 서비스에 대한 비트레이트를 예측하기 위한 기능을 제어 및 처리한다.
정보 수집부(1913)는 모바일 장치로부터 비디오 세그먼트에 대한 이동 경로별 비트레이트를 예측해줄 것을 요청하는 메시지가 수신될 시, 비트레이트 예측 요청 메시지로부터 모바일 장치의 이동 경로 정보를 추출하고, 추출된 이동 경로 정보를 이용하여 지리정보 시스템으로부터 추가적인 경로 정보를 획득하기 위한 기능을 제어 및 처리한다. 여기서, 비트레이트 예측 요청 메시지는 도 6에 도시된 바와 같이, 해당 메시지가 비트레이트 예측 요청 메시지임을 나타내는 타입 정보(601), 모바일 장치(500)의 현재 위치 및/혹은 이동 경로 정보(603), 채널 정보(605), 모바일 장치(500)의 식별 정보(607), 현재 시간 정보(609) 및 컨텐츠 URL 혹은 MPD(Media Presentation Description)의 URL 정보(611)를 포함할 수 있다. 또한, 정보 수집부(1913)는 도 3a에 도시된 바와 같은 지리정보 요청 메시지 및 도 3b에 도시된 바와 같은 지리정보 응답 메시지를 이용하여 모바일 장치의 이동 경로에 대한 추가적인 경로 정보를 획득할 수 있다.
또한, 정보 수집부(1913)는 모바일 장치로부터 수신된 정보와 지리정보시스템으로부터 수신된 정보를 바탕으로 현재시점으로부터 세그먼트 단위시간 이후에 모바일 장치가 이동할 위치를 예측하고, 특정 세그먼트 시간 이후에 모바일 장치로 서비스를 제공할 것으로 예측되는 기지국을 통해 단말에 대한 네트워크 자원 정보를 획득한다. 이때, 정보 수집부(1913)는 도 4a에 도시된 바와 같은 네트워크 정보 요청 메시지 및 도 4b에 도시된 바와 같은 네트워크 정보 응답 메시지를 이용하여 단말에 대한 네트워크 자원 정보를 획득할 수 있다. 또한, 정보 수집부(1913)는 모바일 장치의 예측 위치를 바탕으로 모바일 장치의 핸드오버 여부를 예측하고, 핸드오버 타겟 기지국으로부터 단말에 대한 네트워크 자원 정보 및 캐시 정보를 획득한다. 이때, 정보 수집부(1913)는 도 13a에 도시된 바와 같은 네트워크 정보 및 캐시 정보 요청 메시지와 도 13b에 도시된 바와 같은 네트워크 정보 및 캐시 정보 응답 메시를 이용하여, 단말에 대한 네트워크 자원 정보 및 타겟 캐시 정보를 획득할 수 있다.
또한, 정보 수집부(1913)는 타겟 기지국의 타겟 캐시 정보를 이용하여 타겟 기지국으로 모바일 장치의 비디오 세그먼트에 대한 프리패치를 요청할 수 있다. 이때, 프리패치를 요청하는 메시지는 도 13c에 도시된 바와 같이 구성될 수 있다.
비트레이트 예측부(1911)는 정보 수집부(1913)에서 획득된 정보들을 바탕으로 모바일 장치의 예측 위치별 비트레이트를 예측한다. 예를 들어, 비트레이트 예측부(1911)는 모바일 장치의 이동 경로에 따라 모바일 장치가 특정 시간에 위치할 것으로 예측되는 위치의 채널 상태, 지형 정보, 교통 정보, 이동 수단 정보 및 네트워크 자원을 고려하여 모바일 장치의 예측 위치 각각에 대응하는 비트레이트를 결정 혹은 예측할 수 있다. 비트레이트 예측부(1911)는 모바일 장치의 예측 위치별로 예측된 비트레이트의 정보 및/혹은 타겟 캐시 정보를 포함하는 비트레이트 예측 응답 메시지를 모바일 장치(500)로 전송한다. 이때, 비트레이트 예측 응답 메시지는 도 7에 도시된 바와 같이 구성될 수도 있으며, 도 14에 도시된 바와 같이 구성될 수도 있다.
송수신부(1920)는 제어부(1910)의 제어에 따라 신호 혹은 메시지를 송수신한다. 예를 들어 송수신부(1920)는 모바일 장치, 기지국, 지리정보시스템과 단말의 비디오 스트리밍 서비스 제공에 필요한 메시지들을 송수신한다.
도 20은 본 발명의 실시 예에 따른 타겟 기지국에서 모를 위한 프리페칭 절차를 도시하고 있다.
도 20을 참조하면, 타겟 기지국은 제어부(2000), 송수신부(2010) 및 캐시(2020)를 포함하여 구성될 수 있다.
제어부(2000)는 기지국의 전반적인 동작을 제어 및 처리하며, 특히, 네트워크 자원 및 캐시 관리부(2001)를 포함함으로써, 모바일 장치로 자원을 할당하고, 모바일 장치의 비디오 스트리밍 서비스를 지원하기 위한 기능을 제어 및 처리한다.
네트워크 자원 및 캐시 관리부(2001)는 위치정보서버로부터 네트워크 정보 및 캐시 정보를 요청하는 메시지가 수신될 시, 네트워크 정보 및 캐시 정보 요청 메시지에서 모바일 장치의 식별 정보 및 자원 할당 관련 정보를 추출한 후, 추출된 정보를 바탕으로 모바일 장치로 할당할 무선 자원을 결정하고, 타겟 기지국에 결합된 캐시(2020)의 ID(혹은 IP 주소)를 확인한다. 네트워크 정보 및 캐시 정보 요청 메시지는 도 13a에 도시된 바와 같이 구성될 수 있다.
네트워크 자원 및 캐시 관리부(2001)는 모바일 장치로 할당할 무선 자원에 대한 정보 및 캐시 ID를 포함하는 네트워크 정보 및 캐시 정보 응답 메시지를 위치정보서버로 전송하기 위한 기능을 제어 및 처리한다. 이때, 네트워크 정보 및 캐시 정보 응답 메시지는 도 13b에 도시된 바와 같이 구성될 수 있다.
네트워크 자원 및 캐시 관리부(2001)는 위치정보서버로부터 모바일 장치가 핸드오버 이후에 요청할 것으로 예상되는 비디오 세그먼트들을 프리페치할 것을 요청하는 메시지가 수신될 시, 프리페치를 수행할 것임을 알리는 응답 메시지를 위치정보서버로 전송하고, 미디어 서버로 해당 비디오 세그먼트들의 전송을 요청하여, 해당 비디오 세그먼트들을 수신하고, 수신된 비디오 세그먼트들을 캐시(2020)에 저장하기 위한 기능을 제어 및 처리한다. 여기서, 프리페치 요청 메시지는 도 13c에 도시된 바와 같이 구성될 수 있고, 미디어 서버로 비디오 세그먼트들의 전송을 요청하는 메시지는 해당 모바일 장치의 식별 정보 및 해당 컨텐츠 정보를 포함할 수 있다.
네트워크 자원 및 캐시 관리부(2001)는 해당 모바일 장치가 타겟 기지국으로 핸드오버한 후, 캐시(2020)에 저장된 비디오 세그먼트를 모바일 장치가 선택한 비트레이트로 전송하기 위한 기능을 제어 및 처리한다.
송수신부(2010)는 제어부(2000)의 제어에 따라 신호 혹은 메시지를 송수신한다. 예를 들어 송수신부(2010)는 모바일 장치, 위치정보서버 및 미디어 서버와 단말의 비디오 스트리밍 서비스 제공에 필요한 메시지들을 송수신한다.
본 명세서에 설명된 발명의 실시 예 및 모든 기능 동작들은 본 명세서에서 개시된 구조 및 이들의 균등 구조들을 포함하는 컴퓨터 소프트웨어, 펌웨어(firmware), 또는 하드웨어로, 또는 이들의 하나 이상의 조합으로 실시될 수 있다. 또한, 본 명세서에서 설명된 발 명의 실시 예들은 하나 이상의 컴퓨터 프로그램 제품, 즉 데이터 프로세싱 장치에 의해 실행되거나 이 장치의 동작을 제어하기 위한 컴퓨터 판독가능 매체 상에 인코딩된 컴퓨터프로그램 명령어들의 하나 이상의 모듈로 실시될 수 있다.
컴퓨터 판독가능 매체는 머신 판독가능 저장 매체, 머신 판독가능 저장 기판, 메모리 장치, 머신 판독가능 전파 스트림에 영향을 주는 물질의 구성, 또는 이들의 하나 이상의 조합이 될 수 있다. 데이터 프로세싱 장치라는 용어는 예로 프로그램 가능한 프로세서, 컴퓨터, 또는 다중 프로세서 또는 컴퓨터를 포함하는 데이터를 프로세싱하기 위한 모든 기기, 장치 및 머신을 포함한다. 기기는 하드웨어에 부가하여 해당 컴퓨터 프로그램에 대한 실행 환경을 생성하는 코드, 예컨대 프로세서 펌웨어, 프로토콜 스택, 데이터베이스 관리 시스템, 운영 시스템 또는 하나 이상의 이들의 조합을 구성하는 코드를 포함할 수 있다.
한편 본 발명의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능하다. 그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 아니 되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야한다.

Claims (20)

  1. 비디오 스트리밍 서비스를 제공하기 위한 단말의 동작 방법에 있어서,
    주기적으로 상기 단말의 위치와 이동 경로 정보를 제1 서버로 전송하는 과정과,
    상기 제1 서버로부터 상기 단말의 이동 경로에 따라 예측되는 복수의 위치들에 대한 비트레이트들의 정보를 수신하는 과정과,
    상기 비트레이트들의 정보에 기반하여 상기 예측되는 복수의 위치들에 대한 비트레이트들 중 적어도 하나의 비트레이트가 임계값보다 낮은 값을 가지는 예측된 위치를 식별하는 과정과,
    상기 단말이 상기 예측된 위치로 이동하는 제2 시점의 제2 비트레이트가 상기 제2 시점의 이전 시점의 제1 비트레이트보다 낮은지 여부를 결정하는 과정과,
    상기 제2 시점의 제2 비트레이트가 상기 제2 시점의 이전 시점의 제1 비트레이트보다 낮은 것으로 결정함에 대응하여, 상기 제1 비트레이트를 상기 제2 비트레이트보다 낮은 제3 비트레이트로 변경하는 과정과,
    상기 제2 시점의 이전에 제2 서버로 요청하기 위한 상기 제3 비트레이트를 기반으로, 상기 예측되는 복수의 위치들에 대한 비디오 세그먼트들을 전송해줄 것을 상기 제2 서버로 요청하는 과정과,
    상기 제1 서버로부터 상기 예측되는 복수의 위치들에 대한 타겟 기지국의 정보들을 수신하는 과정과,
    상기 단말의 현재 위치에 대응하는 예측 위치에 타겟 기지국 정보가 존재하는지 검사하는 과정을 포함하며,
    상기 비디오 세그먼트들의 개수는 상기 제2 시점의 이전 시점의 제1 비트레이트를 기반으로 상기 비디오 스트리밍 서비스를 제공하기 위해 필요한 비디오 세그먼트들의 개수보다 많으며,
    상기 단말의 현재 위치에 대응하는 예측 위치에 상기 타겟 기지국 정보가 존재할 시, 상기 제2 서버로 요청하기 위한 상기 제3 비트레이트를 기반으로, 상기 비디오 세그먼트들을 전송해줄 것을 상기 제2 서버로 요청하는 과정은,
    상기 단말의 현재 위치에 대응하는 예측 위치의 타겟 기지국으로 상기 단말의 현재 위치에 대응하는 예측 위치의 타겟 기지국에 미리 저장된 비디오 세그먼트들을 전송해줄 것을 요청하는 과정을 포함하는 방법.
  2. 청구항 1에 있어서,
    상기 제2 시점의 이전에 상기 제2 서버로부터 상기 비디오 세그먼트들을 수신하는 과정을 더 포함하며,
    상기 비디오 세그먼트들의 개수는 상기 제2 시점의 이전 시점의 제1 비트레이트를 기반으로 상기 비디오 스트리밍 서비스를 제공하기 위해 필요한 상기 비디오 세그먼트들의 개수 및 상기 제2 시점에 상기 비디오 스트리밍 서비스를 사용자에게 끊김없이 제공하기 위해 필요한 최소한의 비디오 세그먼트들의 개수를 포함하는 방법.

  3. 청구항 1에 있어서,
    상기 타겟 기지국 정보는, 상기 미리 저장된 비디오 세그먼트들이 저장된 저장 장치의 식별정보 혹은 IP 주소인 방법.
  4. 비디오 스트리밍 서비스를 제공하기 위한 제1 서버의 동작 방법에 있어서,
    단말로부터 주기적으로 상기 단말의 위치와 이동 경로 정보를 수신하는 과정과,
    상기 단말의 위치 및 이동 경로 정보를 이용하여 각 세그먼트 단위 시간 이후에 상기 단말이 이동할 복수의 위치들과 상기 복수의 위치들에 대한 비트레이트들을 예측하는 과정과,
    예측되는 복수의 위치들에 대한 상기 비트레이트들의 정보를 상기 단말로 전송하는 과정과,
    상기 예측되는 복수의 위치들을 기반으로 상기 단말의 핸드오버 여부를 예측하는 과정을 포함하며,
    상기 비트레이트들의 정보에 기반하여 상기 예측되는 복수의 위치들에 대한 비트레이트들 중 적어도 하나의 비트레이트가 임계값보다 낮은 값을 가지는 예측된 위치가 식별되고,
    상기 단말이 상기 예측된 위치로 이동하는 제2 시점의 제2 비트레이트가 상기 제2 시점의 이전 시점의 제1 비트레이트보다 낮은지 여부가 결정되고,
    상기 제2 시점의 제2 비트레이트가 상기 제2 시점의 이전 시점의 제1 비트레이트보다 낮은 것으로 결정되면, 상기 제1 비트레이트가 상기 제2 비트레이트보다 낮은 제3 비트레이트로 변경되고,
    상기 제2 시점의 이전에 상기 제3 비트레이트에 기반하여 요청되는 비디오 세그먼트의 개수는 상기 제2 시점의 이전 시점의 제1 비트레이트를 기반으로 상기 비디오 스트리밍 서비스를 제공하기 위해 필요한 비디오 세그먼트의 개수보다 많으며,
    상기 단말이 특정 예측 위치에서 핸드오버할 것으로 예측되는 경우, 상기 단말이 상기 특정 예측 위치에서 핸드오버 한 이후에 제2 서버로 요청할 것으로 예상되는 비디오 세그먼트들을 미리 수신할 것을 상기 단말의 핸드오버 타겟 기지국으로 요청하는 과정을 더 포함하는 방법.
  5. 청구항 4에 있어서,
    상기 비트레이트들의 정보는, 상기 예측되는 복수의 위치들의 지형 정보, 교통 정보, 채널 정보, 상기 단말의 이동 수단 정보, 상기 예측되는 복수의 위치들에서 상기 단말이 할당 받을 것으로 예상되는 네트워크 자원 정보, 상기 예측되는 복수의 위치들에서 상기 단말로 서비스를 제공할 기지국의 혼잡도와 서빙 단말의 수 중 적어도 하나를 포함하고, 상기 비트레이트들의 정보에 기반하여 상기 제2 서버로 요청하기 위한 상기 제1 비트레이트를 예측하는 방법.

  6. 청구항 4에 있어서,
    상기 핸드오버 타겟 기지국으로 상기 제2 서버로 요청할 것으로 예상되는 비디오 세그먼트들이 저장될 저장 장치의 정보를 요청하는 과정과,
    상기 특정 예측 위치에서 상기 저장 장치로부터 상기 제2 서버로 요청할 것으로 예상되는 비디오 세그먼트들을 수신할 것을 상기 단말로 알리는 과정을 더 포함하는 방법.
  7. 비디오 스트리밍 서비스를 제공하기 위한 단말에 있어서,
    송수신기; 및
    상기 송수신기와 동작적으로 결합 가능한 적어도 하나의 프로세서를 포함하고,
    상기 적어도 하나의 프로세서는, 주기적으로 상기 단말의 위치와 이동 경로 정보를 제1 서버로 전송하고,
    상기 제1 서버로부터 상기 단말의 이동 경로에 따라 예측되는 복수의 위치들에 대한 비트레이트들의 정보를 수신하고,
    상기 비트레이트들의 정보에 기반하여 상기 예측되는 복수의 위치들에 대한 비트레이트들 중 적어도 하나의 비트레이트가 임계값보다 낮은 값을 가지는 예측된 위치를 식별하고,
    상기 단말이 상기 예측된 위치로 이동하는 제2 시점의 제2 비트레이트가 상기 제2 시점의 이전 시점의 제1 비트레이트보다 낮은지 여부를 결정하고,
    상기 제2 시점의 제2 비트레이트가 상기 제2 시점의 이전 시점의 제1 비트레이트보다 낮은 것으로 결정함에 대응하여, 상기 제1 비트레이트를 상기 제2 비트레이트보다 낮은 제3 비트레이트로 변경하고,
    상기 제2 시점의 이전에 제2 서버로 요청하기 위한 상기 제3 비트레이트를 기반으로, 상기 예측되는 복수의 위치들에 대한 비디오 세그먼트들을 전송해줄 것을 상기 제2 서버로 요청하도록 제어하고,
    상기 제1 서버로부터 상기 예측되는 복수의 위치들에 대한 타겟 기지국의 정보들을 수신하고,
    상기 단말의 현재 위치에 대응하는 예측 위치에 타겟 기지국 정보가 존재하는지 검사하며,
    상기 비디오 세그먼트들의 개수는 상기 제2 시점의 이전 시점의 제1 비트레이트를 기반으로 상기 비디오 스트리밍 서비스를 제공하기 위해 필요한 비디오 세그먼트들의 개수보다 많으며,
    상기 단말의 현재 위치에 대응하는 예측 위치에 상기 타겟 기지국 정보가 존재할 시, 상기 단말의 현재 위치에 대응하는 예측 위치의 타겟 기지국으로 상기 단말의 현재 위치에 대응하는 예측 위치의 타겟 기지국에 미리 저장된 비디오 세그먼트들을 전송해줄 것을 요청하는 단말.
  8. 청구항 7에 있어서,
    상기 적어도 하나의 프로세서는,
    상기 제2 시점의 이전에 상기 제2 서버로부터 상기 비디오 세그먼트들을 수신하도록 제어하고,
    상기 비디오 세그먼트들의 개수는 상기 제2 시점의 이전 시점의 제1 비트레이트를 기반으로 상기 비디오 스트리밍 서비스를 제공하기 위해 필요한 상기 비디오 세그먼트들의 개수 및 상기 제2 시점에 상기 비디오 스트리밍 서비스를 사용자에게 끊김없이 제공하기 위해 필요한 최소한의 비디오 세그먼트들의 개수를 포함하는 단말.
  9. 청구항 7에 있어서,
    상기 타겟 기지국 정보는, 상기 미리 저장된 비디오 세그먼트들이 저장된 저장 장치의 식별정보 혹은 IP 주소인 단말.
  10. 비디오 스트리밍 서비스를 제공하기 위한 제1 서버의 장치에 있어서,
    송수신기; 및
    상기 송수신기와 동작적으로 결합 가능한 적어도 하나의 프로세서를 포함하고,
    상기 적어도 하나의 프로세서는, 단말로부터 주기적으로 상기 단말의 위치와 이동 경로 정보를 수신하고,
    상기 단말의 위치 및 이동 경로 정보를 이용하여 각 세그먼트 단위 시간 이후에 상기 단말이 이동할 복수의 위치들을 예측하고,
    상기 예측되는 복수의 위치들에 대한 비트레이트들을 예측하고,
    상기 예측되는 복수의 위치들에 대한 상기 비트레이트들의 정보를 상기 단말로 전송하고
    상기 예측되는 복수의 위치들을 기반으로 상기 단말의 핸드오버 여부를 예측하고,
    상기 단말이 특정 예측 위치에서 핸드오버할 것으로 예측되는 경우, 상기 단말이 상기 특정 예측 위치에서 핸드오버 한 이후에 제2 서버로 요청할 것으로 예상되는 비디오 세그먼트들을 미리 수신할 것을 상기 단말의 핸드오버 타겟 기지국으로 요청하며,
    상기 비트레이트들의 정보는, 상기 예측되는 복수의 위치들에 대한 상기 비트레이트들 중에서 적어도 하나의 비트레이트가 임계값보다 낮으면, 상기 예측되는 복수의 위치들에 대한 비디오 세그먼트들을 전송해줄 것을 상기 단말이 제2 서버로 요청하기 위한 제1 비트레이트를 상기 단말의 현재 위치에 대한 제2 비트레이트보다 낮도록 결정하는데 이용되는 장치.
  11. 청구항 10에 있어서,
    상기 비트레이트들의 정보는, 상기 예측되는 복수의 위치들의 지형 정보, 교통 정보, 채널 정보, 상기 단말의 이동 수단 정보, 상기 예측되는 복수의 위치들에서 상기 단말이 할당받을 것으로 예상되는 네트워크 자원 정보, 상기 예측되는 복수의 위치들에서 상기 단말로 서비스를 제공할 기지국의 혼잡도와 서빙 단말의 수 중 적어도 하나를 포함하고, 상기 비트레이트들의 정보에 기반하여 상기 제2 서버로 요청하기 위한 상기 제1 비트레이트를 예측하는 장치.
  12. 청구항 10에 있어서,
    상기 적어도 하나의 프로세서는, 상기 핸드오버 타겟 기지국으로 상기 제2 서버로 요청할 것으로 예상되는 비디오 세그먼트들이 저장될 저장 장치의 정보를 요청하고,
    상기 특정 예측 위치에서 상기 저장 장치로부터 상기 제2 서버로 요청할 것으로 예상되는 비디오 세그먼트들을 수신할 것을 상기 단말로 알리는 장치.

  13. 삭제
  14. 삭제
  15. 삭제
  16. 삭제
  17. 삭제
  18. 삭제
  19. 삭제
  20. 삭제
KR1020130066062A 2013-06-10 2013-06-10 비디오 스트리밍 서비스를 제공하기 위한 방법 및 그 모바일 장치 KR102066707B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020130066062A KR102066707B1 (ko) 2013-06-10 2013-06-10 비디오 스트리밍 서비스를 제공하기 위한 방법 및 그 모바일 장치
US14/897,623 US10631030B2 (en) 2013-06-10 2014-06-10 Method for providing video streaming service and mobile device for same
PCT/KR2014/005075 WO2014200242A1 (ko) 2013-06-10 2014-06-10 비디오 스트리밍 서비스를 제공하기 위한 방법 및 그 모바일 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130066062A KR102066707B1 (ko) 2013-06-10 2013-06-10 비디오 스트리밍 서비스를 제공하기 위한 방법 및 그 모바일 장치

Publications (2)

Publication Number Publication Date
KR20140144066A KR20140144066A (ko) 2014-12-18
KR102066707B1 true KR102066707B1 (ko) 2020-01-15

Family

ID=52022474

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130066062A KR102066707B1 (ko) 2013-06-10 2013-06-10 비디오 스트리밍 서비스를 제공하기 위한 방법 및 그 모바일 장치

Country Status (3)

Country Link
US (1) US10631030B2 (ko)
KR (1) KR102066707B1 (ko)
WO (1) WO2014200242A1 (ko)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106416360A (zh) * 2014-06-25 2017-02-15 华为技术有限公司 一种资源预留方法、装置、接入点及网络服务器
CN104581340B (zh) * 2015-01-16 2018-02-16 京东方科技集团股份有限公司 客户端、流媒体数据接收方法和流媒体数据传输系统
US9756112B2 (en) * 2015-02-11 2017-09-05 At&T Intellectual Property I, L.P. Method and system for managing service quality according to network status predictions
CN107925676A (zh) * 2015-06-15 2018-04-17 诺基亚通信公司 用于控制从无线网络到用户设备的数据下载的方法、装置、计算机可读介质和计算机程序产品
US11272563B2 (en) 2015-09-10 2022-03-08 Nokia Solutions And Networks Oy Selective proprietary protocol support indication removal
KR102478847B1 (ko) * 2015-10-30 2022-12-19 삼성전자주식회사 무선 통신 시스템에서 핸드오버 수행 방법 및 장치
WO2018101554A1 (ko) * 2016-11-29 2018-06-07 에스케이텔레콤 주식회사 스트리밍 서비스 제공 방법 및 이를 위한 장치
KR101915469B1 (ko) 2016-11-29 2018-11-06 에스케이텔레콤 주식회사 스트리밍 서비스 제공 방법 및 이를 위한 장치
KR102079935B1 (ko) * 2017-03-13 2020-02-21 한국전자통신연구원 측위 인프라 db 갱신을 위한 사용자 참여형 데이터 선별 장치 및 그 방법
US10080175B1 (en) * 2017-05-24 2018-09-18 T-Mobile Usa, Inc. Pre-steering traffic within a telecommunications network
JP6969922B2 (ja) 2017-07-18 2021-11-24 パナソニック株式会社 通信装置、通信システム、および接続先制御方法
US10868726B2 (en) 2018-12-07 2020-12-15 At&T Intellectual Property I, L.P. Apparatus and method for selecting a bandwidth prediction source
JP2022051973A (ja) * 2019-02-08 2022-04-04 ソニーグループ株式会社 情報処理装置および情報処理方法、並びにプログラム
US11284307B2 (en) 2020-04-09 2022-03-22 Tmobile Usa, Inc. Enhancing telecommunication quality of service
US11641600B2 (en) * 2021-03-26 2023-05-02 Nokia Solutions And Networks Oy Bandwidth throttling in a radio access network

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100121977A1 (en) * 2008-11-10 2010-05-13 Nokia Corporation Predictive Bit-Rate Modification of Content Delivery in a Wireless Network
US20120009890A1 (en) * 2010-07-09 2012-01-12 Nokia Corporation Method and apparatus for providing a geo-predictive streaming service

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8200747B2 (en) * 2002-07-12 2012-06-12 Hewlett-Packard Development Company, L.P. Session handoff of segmented media data
US7283803B2 (en) * 2004-04-16 2007-10-16 Broadcom Corporation Location-aware application based quality of service (QOS) via a broadband access gateway
JP4539906B2 (ja) * 2004-07-09 2010-09-08 ソニー・エリクソン・モバイルコミュニケーションズ株式会社 移動無線通信端末及び移動無線通信システム
KR100921632B1 (ko) * 2007-10-11 2009-10-15 아주대학교산학협력단 이동 멀티미디어 스트리밍 서비스 방법
KR101106366B1 (ko) * 2008-10-24 2012-01-18 에스케이플래닛 주식회사 모바일 스트리밍을 위한 단말기, 서버, 시스템 및 그 방법
KR101084326B1 (ko) * 2009-12-15 2011-11-16 부산대학교 산학협력단 기대용량 기반의 무선랜 핸드오프 처리 방법
US9277363B2 (en) * 2011-12-09 2016-03-01 Google Technology Holdings LLC Adaptive data synchronization based on device movement and location

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100121977A1 (en) * 2008-11-10 2010-05-13 Nokia Corporation Predictive Bit-Rate Modification of Content Delivery in a Wireless Network
US20120009890A1 (en) * 2010-07-09 2012-01-12 Nokia Corporation Method and apparatus for providing a geo-predictive streaming service

Also Published As

Publication number Publication date
KR20140144066A (ko) 2014-12-18
WO2014200242A1 (ko) 2014-12-18
US20160127754A1 (en) 2016-05-05
US10631030B2 (en) 2020-04-21

Similar Documents

Publication Publication Date Title
KR102066707B1 (ko) 비디오 스트리밍 서비스를 제공하기 위한 방법 및 그 모바일 장치
KR101943530B1 (ko) 이동성 관리를 위한 가상 서빙 게이트웨이를 배치하기 위한 시스템 및 방법
US10897493B2 (en) Systems and methods for predictive user location and content replication
US9775001B2 (en) Method and system of providing data service according to a user's future location
CN102934477B (zh) 用于确定网络质量的方法及相关联的通信设备和通信网络
EP3050326B1 (en) Adaptive video white spot learning and user bandwidth delivery control system
JP5855292B2 (ja) データスポットの位置を特定する方法、ならびにデータスポットを使用するネットワークおよびユーザ機器
US10425864B2 (en) Methods and apparatuses for processing UE context of UE
US20180176325A1 (en) Data pre-fetching in mobile networks
KR101909557B1 (ko) 모바일 네트워크에서의 sdn 기반 트래픽 데이터 제어 방법 및 장치
US20140120930A1 (en) Method, Apparatus, Computer Program Product and System for Communicating Predictions
EP3357277A1 (en) Analytics driven wireless device session context handover in operator cloud
WO2017170692A1 (ja) スライス管理システム及びスライス管理方法
KR101306374B1 (ko) 다중 비트율의 콘텐츠를 사용한 VoD 서비스 방법
US8996013B2 (en) Method and system for load balancing of large file transfers on a wireless network
WO2019016561A1 (en) METHOD, DEVICE AND SYSTEM FOR BROADCASTING MULTIMEDIA DATA
WO2016058648A1 (en) Streaming service control
Triki et al. Anticipating resource management and QoE for mobile video streaming under imperfect prediction
US8606296B1 (en) Method and system for optimizing large file transfers while moving through nodes on a wireless network
US20230144248A1 (en) Dynamic quality of service traffic steering in a multi-access edge computing environment
KR101360772B1 (ko) 핸드오버를 고려한 모바일 컨텐츠 제공 방법 및 이를 위한 장치
WO2023108512A1 (zh) 服务质量的分析方法、装置、设备及存储介质
Park et al. MOSQUITO: Mobile video streaming protocol for the high level QoE provisioning over heterogeneous wireless access networks
Tamizhselvi et al. An Advanced Efficient Video Streaming Framework for Vehicular Adhoc Networks Using VANET Streaming Protocol

Legal Events

Date Code Title Description
AMND Amendment
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