KR102240526B1 - 전자 장치의 컨텐츠 다운로드 방법 및 그 전자 장치 - Google Patents

전자 장치의 컨텐츠 다운로드 방법 및 그 전자 장치 Download PDF

Info

Publication number
KR102240526B1
KR102240526B1 KR1020130153987A KR20130153987A KR102240526B1 KR 102240526 B1 KR102240526 B1 KR 102240526B1 KR 1020130153987 A KR1020130153987 A KR 1020130153987A KR 20130153987 A KR20130153987 A KR 20130153987A KR 102240526 B1 KR102240526 B1 KR 102240526B1
Authority
KR
South Korea
Prior art keywords
terminal
content
guest
downloaded
download
Prior art date
Application number
KR1020130153987A
Other languages
English (en)
Other versions
KR20150068136A (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 KR1020130153987A priority Critical patent/KR102240526B1/ko
Priority to US14/558,882 priority patent/US10284614B2/en
Publication of KR20150068136A publication Critical patent/KR20150068136A/ko
Application granted granted Critical
Publication of KR102240526B1 publication Critical patent/KR102240526B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/16Combinations of two or more digital computers each having at least an arithmetic unit, a program unit and a register, e.g. for a simultaneous processing of several programs
    • 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/10Architectures or entities
    • H04L65/1059End-user terminal functionalities specially adapted for real-time communication
    • 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/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • 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/765Media network packet handling intermediate
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/131Protocols for games, networked simulations or virtual reality
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/50Service provisioning or reconfiguring
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephone Function (AREA)

Abstract

본 발명은 전자 장치의 컨텐츠 다운로드 방법 및 그 전자 장치에 관한 것으로, 전자 장치의 동작 방법에 있어서, 호스트 단말기로서, 게스트 단말기와 네트워크 그룹을 형성하는 과정; 상기 게스트 단말기의 컨텐츠 다운로드 성능을 획득하는 과정; 상기 게스트 단말기에서 다운로드 받을 컨텐츠의 분량을 결정하는 과정; 및 상기 결정된 분량의 컨텐츠를 게스트 단말기로 분할하여 다운로드하고 나머지 분량의 컨텐츠를 호스트 단말기로 분할하여 다운로드 할 것을 요구하는 메시지를, 컨텐츠 제공 서버로 전송하는 과정을 포함한다. 또한, 본 발명은 상술한 실시 예와 다른 실시 예들도 포함한다.

Description

전자 장치의 컨텐츠 다운로드 방법 및 그 전자 장치{CONTENTS DOWNLOAD METHOD OF ELECTRONIC APPARATUS AND ELECTRONIC APPPARATUS THEREOF}
본 발명은, 전자 장치의 컨텐츠 다운로드 방법 및 그 전자 장치에 관한 것이다.
스마트 폰(smart phone) 또는 태블릿(tablet) PC 등과 같은 다양한 유형의 전자 장치는, 예를 들어, 이동 통신망(mobile communication network)을 통해 영화 또는 게임 등과 같은 컨텐츠(contents)를 제공하는 서버(server)와 접속할 수 있다.
상기 서버는, 예를 들어, 컨텐츠 제공 서버(contents provide sever) 등으로 일컬어질 수 있고, 상기 전자 장치는, 예를 들어, 단말기(terminal) 등으로 일컬어질 수 있다.
상기 컨텐츠 제공 서버는, 상기 영화 또는 게임 등과 같은 다양한 유형의 컨텐츠를, 상기 이동 통신망을 통해 접속한 단말기로 다운로드 할 수 있다.
예를 들어, 제1 단말기(terminal 1)와 제2 단말기(terminal 2)는, 이동 통신망을 통해 컨텐츠 제공 서버(contents provide server)와 접속한 후, 상기 컨텐츠 제공 서버에서 제공하는 온라인 게임(online game) 컨텐츠를 각각 다운로드 받을 수 있다.
상기 제1 단말기와 제2 단말기는, 예를 들어, WiFi 또는 Bluetooth 등과 같은 근거리(local) 통신을 이용하여 네트워크 그룹(network group)을 형성한 후, 상기 컨텐츠 제공 서버로부터 다운로드 받은 온라인 게임 컨텐츠를 동시에 실행할 수 있다.
이에 따라, 상기 제1 단말기의 사용자와 상기 제2 단말기의 사용자는, 상기 근거리 통신을 이용하여, 상기 온라인 게임 컨텐츠를, 그룹 플레이(group play)로 즐길 수 있다. 상기 그룹 플레이는, 스마트 폰 또는 태블릿 PC 등과 같은 단말기를 소유한 여러 명의 사용자들이, 노래, 사진, 영상, 그리고 게임 등을 실시간으로 공유하는 행위를 말한다.
그러나, 상기와 같이 컨텐츠 제공 서버에서 제공하는 영화 또는 게임 등과 같은 대용량의 컨텐츠를, 각 단말기들이 개별적으로 다운로드 받는 경우, 다운로드 완료 시간이 길어질 수 있다.
더 나아가, 임의의 한 단말기의 다운로드 성능이, 나머지 다른 단말기의 다운로드 성능 보다 현저히 낮은 경우, 상기와 같이 그룹 플레이를 실행할 수 있는 시점까지의 사용자 대기 시간이 길어질 수 있다.
본 발명은, 컨텐츠 제공 서버에서 제공하는 컨텐츠를, 네트워크 그룹을 형성한 각 단말기들의 다운로드 성능에 따라 차등 분할하여 다운로드 받으면서, 각 단말기들이 다운로드 되는 컨텐츠를 멀티 캐스트(multi cast)를 통해 실시간으로 공유할 수 있도록 하기 위한 전자 장치의 컨텐츠 다운로드 방법 및 그 전자 장치를 제공한다.
본 발명의 실시 예는, 전자 장치의 동작 방법에 있어서, 호스트 단말기로서, 게스트 단말기와 네트워크 그룹을 형성하는 과정; 상기 게스트 단말기의 컨텐츠 다운로드 성능을 획득하는 과정; 상기 게스트 단말기에서 다운로드 받을 컨텐츠의 분량을 결정하는 과정; 및 상기 결정된 분량의 컨텐츠를 게스트 단말기로 분할하여 다운로드하고 나머지 분량의 컨텐츠를 호스트 단말기로 분할하여 다운로드 할 것을 요구하는 메시지를, 컨텐츠 제공 서버로 전송하는 과정을 포함한다.
본 발명의 실시 예는, 전자 장치에 있어서, 이동 통신망에 접속하기 위한 이동 통신 모듈; 근거리 통신망에 접속하기 위한 근거리 통신 모듈; 및 상기 이동 통신망을 통해 컨텐츠 제공 서버에서 제공하는 컨텐츠를 다운로드 받기 위한 프로세서를 포함하되, 상기 프로세서는, 호스트 단말기로서, 게스트 단말기와 네트워크 그룹을 형성하고, 상기 게스트 단말기의 컨텐츠 다운로드 성능을 획득하여, 상기 게스트 단말기에서 다운로드 받을 컨텐츠의 분량을 결정하고, 상기 분량의 컨텐츠를 게스트 단말기로 분할하여 다운로드하고 나머지 분량의 컨텐츠를 호스트 단말기로 분할하여 다운로드 할 것을 요구하는 메시지를, 상기 컨텐츠 제공 서버로 전송한다.
본 발명의 다양한 실시 예에 따르면, 네트워크 그룹에 속한 각 단말기들의 컨텐츠 다운로드 완료 시간이 단축되고, 각 단말기들을 소유한 여러 명의 사용자들이, 상기 다운로드 받은 컨텐츠를 실시간으로 공유하여 그룹 플레이를 실행할 수 있는 시점까지의 사용자 대기 시간이 단축된다.
더 나아가, 네트워크 그룹에 속한 임의의 단말기가, 컨텐츠를 제공하는 사업자 네트워크에 가입되어 있지 않더라도, 네트워크 그룹에 속한 각 단말기들 간의 멀티 캐스트를 통해, 컨텐츠를 공유할 수 있게 된다.
도 1은 본 발명의 다양한 실시 예에 따른 전자 장치의 블록 도면이다.
도 2는 본 발명의 다양한 실시 예에 따른 하드웨어의 블록 도면이다.
도 3는 본 발명의 다양한 실시 예에 따른 프로그래밍 모듈의 블록 도면이다.
도 4는 본 발명의 다양한 실시 예에 따른 전자 장치들이 네트워크 그룹을 형성한 도면이다.
도 5는 본 발명의 다양한 실시 예에 따른 전자 장치의 컨텐츠 다운로드 방법에 대한 동작 흐름 도면이다.
도 6은 본 발명의 다양한 실시 예에 따른 호스트 단말기의 컨텐츠 다운로드 방법에 대한 동작 흐름 도면이다.
도 7은 본 발명의 다양한 실시 예에 따른 호스트 단말기에서 컨텐츠 제공 서버로 전송되는 요구 메시지의 구성 요소를 도시한 도면이다.
도 8은 본 발명의 다양한 실시 예에 따른 호스트에서 컨텐츠 제공 서버로 전송되는 요구 메시지를 도시한 도면이다.
도 9는 본 발명의 다양한 실시 예에 따라 컨텐츠의 다운로드 및 공유 과정을 도시한 도면이다.
도 10은 본 발명의 다양한 실시 예에 따라 각 단말기들에서 컨텐츠 다운로드 동작이 동시에 완료되는 도면이다.
이하, 첨부된 도면을 참조하여 본 발명을 설명한다. 본 발명은 특정 실시 예들이 도면에 예시되고 관련된 상세한 설명이 기재되어 있으나, 다양한 변경을 가할 수 있고 여러 가지 실시 예를 가질 수 있다.
따라서, 본 발명은 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 발명의 사상 및 기술 범위에 포함되는 모든 변경 또는 균등물 내지 대체물을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조부호가 사용되었다.
본 발명에 따른 전자 장치는, 통신 기능이 포함된 장치일 수 있다. 예를 들면, 스마트 폰(Smart Phone), 태블릿 PC(Tablet Personal Computer), 이동전화기(Mobile Phone), 화상전화기, 전자북 리더기(E-Book Reader), 데스크탑 PC(Desktop Personal Computer), 랩탑 PC(Laptop Personal Computer), 넷북 컴퓨터(Netbook Computer), PDA(Personal Digital Assistant), PMP(Portable Multimedia Player), MP3 플레이어, 모바일 의료기기, 전자 팔찌, 전자 목걸이, 전자 앱세서리(Appcessory), 카메라(Camera), 웨어러블 장치(Wearable Device), 전자 시계(Electronic Clock), 손목 시계(Wrist Watch), 스마트 가전(Smart White Appliance)(예: 냉장고, 에어컨, 청소기, 인공 지능 로봇, TV, DVD(Digital Video Disk) 플레이어, 오디오, 오븐, 전자레인지, 세탁기, 공기 청정기, 전자 액자 등), 각종 의료기기(예: MRA(Magnetic Resonance Angiography), MRI(Magnetic Resonance Imaging), CT(Computed Tomography), 촬영기, 초음파기 등), 네비게이션(Navigation) 장치, GPS 수신기(Global Positioning System Receiver), EDR(Event Data Recorder), FDR(Flight Data Recorder), 셋톱 박스(Set-Top Box), TV 박스(예를 들면, 삼성 HomeSyncTM, 애플TVTM, 또는 구글 TVTM), 전자 사전, 자동차 인포테인먼트(Infotainment) 장치, 선박용 전자 장비(Electronic Equipment for Ship, 예를 들면, 선박용 항법 장치, 자이로 콤파스 등), 항공 전자기기(Avionics), 보안 기기, 전자 의복, 전자 키, 캠코더(Camcorder), 게임 콘솔(Game Consoles), HMD(Head-Mounted Display), 평판표시장치(Flat Panel Display Device), 전자 앨범, 통신 기능을 포함한 가구(Furniture) 또는 건물/구조물의 일부, 전자 보드(Electronic Board), 전자 사인 입력장치(Electronic Signature Receiving Device) 또는 프로젝터(Projector) 등의 다양한 장치들 중 하나 또는 그 이상의 조합일 수 있다. 본 발명에 따른 전자 장치는 전술한 기기들에 한정되지 않음은 당업자에게 자명하다.
도 1은, 본 발명의 일 실시 예에 따른 전자 장치의 블록 도면이다. 도 1을 참조하면, 전자장치(100)는 버스(110), 프로세서(120), 메모리(130), 사용자 입력 모듈(140), 디스플레이 모듈(150), 그리고 통신 모듈(160)을 포함할 수 있다.
상기 버스(110)는 전술한 구성요소들을 서로 연결하고, 전술한 구성요소들 간의 통신(예: 제어 메시지)을 전달하는 회로일 수 있다.
상기 프로세서(120)는, 예를 들면, 상기 버스(110)를 통해 전술한 다른 구성요소들(예: 메모리(130), 사용자 입력 모듈(140), 디스플레이 모듈(150), 통신 모듈(160) 등)로부터 명령을 수신하여, 수신된 명령을 해독하고, 해독된 명령에 따른 연산이나 데이터 처리를 실행할 수 있다.
상기 메모리(130)는, 상기 프로세서(120) 또는 다른 구성요소들(예: 사용자 입력 모듈(140), 디스플레이 모듈(150), 통신 모듈(160) 등)로부터 수신되거나 상기 프로세서(120) 또는 다른 구성요소들에 의해 생성된 명령 또는 데이터를 저장할 수 있다.
상기 메모리(130)는, 예를 들면, 커널(131), 미들웨어(132), 어플리케이션 프로그래밍 인터페이스(API: Application Programming Interface, 133) 또는 애플리케이션(134) 등의 프로그래밍 모듈들을 포함할 수 있다. 전술한 각각의 프로그래밍 모듈들은 소프트웨어, 펌웨어, 하드웨어 또는 이들 중 적어도 둘 이상의 조합으로 구성될 수 있다.
상기 커널(131)은 나머지 다른 프로그래밍 모듈들, 예를 들면, 미들웨어(132), API(133) 또는 애플리케이션(134)에 구현된 동작 또는 기능을 실행하는 데 사용되는 시스템 리소스들(예: 버스(110), 프로세서(120) 또는 메모리(130) 등)을 제어 또는 관리할 수 있다.
상기 커널(131)은 상기 미들웨어(132), API(133) 또는 애플리케이션(134)에서 전자 장치(100)의 개별 구성요소에 접근하여 제어 또는 관리할 수 있는 인터페이스를 제공할 수 있다.
상기 미들웨어(132)는 상기 API(133) 또는 애플리케이션(134)이 커널(131)과 통신하여 데이터를 주고받을 수 있도록 중개 역할을 수행할 수 있다. 또한, 상기 미들웨어(132)는 (다수의) 애플리케이션들(134)로부터 수신된 작업 요청들과 관련하여, 예를 들면, (다수의) 애플리케이션들(134) 들 중 적어도 하나의 애플리케이션에 전자 장치(100)의 시스템 리소스(예: 버스(110), 프로세서(120) 또는 메모리(130) 등)를 사용할 수 있는 우선 순위를 배정하는 등의 방법을 이용하여 작업 요청에 대한 로드 밸런싱을 수행할 수 있다.
상기 API(133)는 애플리케이션(134)이 커널(131) 또는 미들웨어(132)에서 제공하는 기능을 제어할 수 있는 인터페이스로, 예를 들면, 파일 제어, 창 제어, 화상 처리 또는 문자 제어 등을 위한 적어도 하나의 인터페이스 또는 함수를 포함할 수 있다.
상기 사용자 입력 모듈(140)은, 예를 들면, 사용자로부터 명령 또는 데이터를 입력 받아 버스(110)를 통해 프로세서(120) 또는 메모리(130)에 전달할 수 있고, 상기 디스플레이 모듈(150)은 사용자에게 화상, 영상 또는 데이터 등을 표시할 수 있다.
상기 통신 모듈(160)은 다른 전자 장치(102)와 전자 장치(100) 간의 통신을 연결할 수 있고, 상기 통신 모듈(160)은 소정의 근거리 통신 프로토콜(예: Wifi(Wireless Fidelity), BT(Bluetooth), NFC(Near Field Communication) 또는 소정의 네트워크 통신(162)(예: Internet, LAN(Local Area Network), WAN(Wire Area Network), Telecommunication Network, Cellular Network, Satellite Network 또는 POTS(Plain Old Telephone Service) 등)을 지원할 수 있다.
상기 전자 장치(102, 104) 각각은 전자 장치(100)와 동일한 (예: 같은 타입의) 장치이거나 또는 다른 (예: 다른 타입의) 장치일 수 있다.
도 2는, 본 발명의 일 실시 예에 따른 하드웨어의 블록 도면이다. 상기 하드웨어(200)는, 예를 들면, 도 1에 도시된 전자 장치(100)일 수 있다. 도 2를 참조하면, 상기 하드웨어(200)는 하나 이상의 프로세서(210), SIM(Subscriber Identification Module) 카드(214), 메모리(220), 통신 모듈(230), 센서 모듈(240), 사용자 입력 모듈(250), 디스플레이 모듈(260), 인터페이스(270), 오디오 코덱(280), 카메라 모듈(291), 전력관리 모듈(295), 배터리(296), 인디케이터(297) 또는 모터(298)를 포함할 수 있다.
상기 프로세서(210) (예: 프로세서 120)는, 하나 이상의 애플리케이션 프로세서(AP: Application Processor, 211) 또는 하나 이상의 커뮤니케이션 프로세서(CP: Communication Processor, 213)를 포함할 수 있다.
상기 프로세서(210)는, 예를 들면, 도 1에 도시된 프로세서(120)일 수 있다. 도 1에서는 상기 AP(211) 및 CP(213)가 상기 프로세서(210) 내에 포함된 것으로 도시되었으나, 상기 AP(211)와 CP(213)는 서로 다른 IC 패키지들 내에 각각 포함될 수 있다. 일 실시 예에서 상기 AP(211) 및 CP(213)는 하나의 IC 패키지 내에 포함될 수 있다.
상기 AP(211)는 운용체제 또는 응용 프로그램을 구동하여 상기 AP(211)에 연결된 다수의 하드웨어 또는 소프트웨어 구성요소들을 제어하고, 멀티미디어 데이터를 포함한 각종 데이터 처리 및 연산을 수행할 수 있다. 상기 AP(211)는, 예를 들면, SoC(System on Chip)로 구현될 수 있다. 일 실시 예에 따르면, 상기 프로세서(210)는, GPU(Graphic Processing Unit, 미도시)를 더 포함할 수 있다.
상기 CP(213)는 상기 하드웨어(200)를 포함하는 전자 장치(예: 전자 장치 100)와 네트워크로 연결된 다른 전자 장치들 간의 통신에서 데이터 링크를 관리하고 통신 프로토콜을 변환하는 기능을 수행할 수 있다. 상기 CP(213)는, 예를 들면, SoC로 구현될 수 있다.
일 실시 예에 따르면, 상기 CP(213)는 멀티미디어 제어 기능의 적어도 일부를 수행할 수 있다. 상기 CP(213)는, 예를 들면, 가입자 식별 모듈(예: SIM 카드 214)을 이용하여 통신 네트워크 내에서 단말의 구별 및 인증을 수행할 수 있다. 또한, 상기 CP(213)는 사용자에게 음성 통화, 영상 통화, 문자 메시지 또는 패킷 데이터(packet data) 등의 서비스들을 제공할 수 있다.
또한, 상기 CP(213)는 통신 모듈(230)의 데이터 송수신을 제어할 수 있다. 도 2에서는, 상기 CP(213), 전력관리 모듈(295) 또는 메모리(220) 등의 구성요소들이 상기 AP(211)와 별개의 구성요소로 도시되어 있으나, 일 실시 예에 따르면, 상기 AP(211)가 전술한 구성요소들의 적어도 일부(예: CP(213))를 포함하도록 구현될 수 있다.
일 실시 예에 따르면, 상기 AP(211) 또는 CP(213)는 각각에 연결된 비휘발성 메모리 또는 다른 구성요소 중 적어도 하나로부터 수신한 명령 또는 데이터를 휘발성 메모리에 로드(load)하여 처리할 수 있다. 또한, 상기 AP(211) 또는 CP(213)는 다른 구성요소 중 적어도 하나로부터 수신하거나 다른 구성요소 중 적어도 하나에 의해 생성된 데이터를 비휘발성 메모리에 저장(store)할 수 있다.
상기 SIM 카드(214)는 가입자 식별 모듈을 구현한 카드일 수 있으며, 전자 장치의 특정 위치에 형성된 슬롯에 삽입될 수 있다. 상기 SIM 카드(214)는 고유한 식별 정보(예: ICCID(Integrated Circuit Card Identifier)) 또는 가입자 정보(예: IMSI(International Mobile Subscriber Identity))를 포함할 수 있다.
상기 메모리(220)는 내장 메모리(222) 또는 외장 메모리(224)를 포함할 수 있다. 상기 메모리(220)는, 예를 들면, 도 1에 도시된 메모리(130)일 수 있다. 상기 내장 메모리(222)는, 예를 들면, 휘발성 메모리(예를 들면, DRAM(Dynamic RAM), SRAM(Static RAM), SDRAM(Synchronous Dynamic RAM) 등) 또는 비휘발성 메모리(non-volatile Memory, 예를 들면, OTPROM(One Time Programmable ROM), PROM(Programmable ROM), EPROM(Erasable and Programmable ROM), EEPROM(Electrically Erasable and Programmable ROM), mask ROM, flash ROM, NAND flash memory, NOR flash memory 등) 중 적어도 하나를 포함할 수 있다.
일 실시 예에 따르면, 상기 내장 메모리(222)는 Solid State Drive (SSD)의 형태를 취할 수도 있다. 상기 외장 메모리(224)는, 예를 들면, CF(Compact Flash), SD(Secure Digital), Micro-SD(Micro Secure Digital), Mini-SD(Mini Secure Digital), xD(extreme Digital) 또는 memory stick 등을 더 포함할 수 있다.
상기 통신 모듈(230)은 무선 통신 모듈(231) 또는 RF 모듈(234)을 포함할 수 있다. 상기 통신 모듈(230)은, 예를 들면, 도 1에 도시된 통신 모듈(160)일 수 있다. 상기 무선 통신 모듈(231)은, 예를 들면, WiFi(233), BT(BlueTooth, 235), GPS(237) 또는 NFC(Near Field Communication, 239)를 포함할 수 있다. 예를 들면, 상기 무선 통신 모듈(231)은 무선 주파수를 이용하여 무선 통신 기능을 제공할 수 있다.
추가적으로 또는 대체적으로, 상기 무선 통신 모듈(231)은 하드웨어(200)를 네트워크(예: Internet, LAN(Local Area Network), WAN(Wire Area Network), Telecommunication Network, Cellular Network, Satellite Network 또는 POTS(Plain Old Telephone Service) 등)와 연결시키기 위한 네트워크 인터페이스(예: LAN card) 또는 모뎀 등을 포함할 수 있다.
상기 RF 모듈(234)은 데이터의 송수신, 예를 들면, RF 신호 또는 호출된 전자 신호의 송수신을 담당할 수 있다. 상기 RF 모듈(234)은, 도시되지는 않았으나, 예를 들면, 트랜시버(Transceiver), PAM(Power Amp Module), 주파수 필터(Frequency Filter) 또는 LNA(Low Noise Amplifier) 등을 포함할 수 있다.
또한, 상기 RF 모듈(234)은 무선통신에서 자유공간 상의 전자파를 송수신하기 위한 부품, 예를 들면, 도체 또는 도선 등을 더 포함할 수 있다.
상기 센서 모듈(240)은, 예를 들면, 제스처 센서(240A), 자이로 센서(240B), 기압 센서(240C), 마그네틱 센서(240D), 가속도 센서(240E), 그립 센서(240F), 근접 센서(240G), RGB(Red, Green, Blue) 센서(240H), 생체 센서(240I), 온/습도 센서(240J), 조도 센서(240K) 또는 UV(Ultra Violet) 센서(240M) 중의 적어도 하나를 포함할 수 있다. 상기 센서 모듈(240)은 물리량을 계측하거나 전자 장치의 작동 상태를 감지하여, 계측 또는 감지된 정보를 전기 신호로 변환할 수 있다.
추가적으로/대체적으로, 상기 센서 모듈(240)은, 예를 들면, 후각 센서(E-Nose Sensor, 미도시), EMG 센서(Electromyography Sensor, 미도시), EEG 센서(Electroencephalogram Sensor, 미도시), ECG 센서(Electrocardiogram Sensor, 미도시) 또는 지문 센서 등을 포함할 수 있다. 상기 센서 모듈(240)은 그 안에 속한 적어도 하나 이상의 센서들을 제어하기 위한 제어회로를 더 포함할 수 있다.
상기 사용자 입력 모듈(250)은 터치 패널(Touch Panel, 252), (디지털) 펜 센서(Pen Sensor, 254), 키(Key, 256) 또는 초음파 입력 장치(258)를 포함할 수 있다. 상기 사용자 입력 모듈(250)은, 예를 들면, 도 1에 도시된 사용자 입력 모듈(140)일 수 있다. 상기 터치 패널(252)은, 예를 들면, 정전식, 감압식, 적외선 방식 또는 초음파 방식 중 적어도 하나의 방식으로 터치 입력을 인식할 수 있다.
또한, 상기 터치 패널(252)은 컨트롤러(미도시)를 더 포함할 수도 있다. 정전식의 경우, 직접 터치뿐만 아니라 근접 인식도 가능하다. 상기 터치 패널(252)은 택타일 레이어(Tactile Layer)를 더 포함할 수도 있다. 이 경우, 상기 터치 패널(252)은 사용자에게 촉각 반응을 제공할 수 있다.
상기 (디지털) 펜 센서(254)는, 예를 들면, 사용자의 터치 입력을 받는 것과 동일 또는 유사한 방법 또는 별도의 인식용 시트(Sheet)를 이용하여 구현될 수 있다. 상기 키(256)로서, 예를 들면, 키패드 또는 터치 키가 이용될 수 있다.
상기 초음파 입력 장치(258)는 초음파 신호를 발생하는 펜을 통해, 단말에서 마이크(예: 마이크(288))로 음파를 감지하여 데이터를 확인할 수 있는 장치로서, 무선 인식이 가능하다. 일 실시 예에 따르면, 상기 하드웨어(200)는 통신 모듈(230)를 이용하여 이와 연결된 외부 장치(예: 네트워크, 컴퓨터 또는 서버)로부터 사용자 입력을 수신할 수도 있다.
상기 디스플레이 모듈(260)은 패널(262) 또는 홀로그램(264)을 포함할 수 있다. 상기 디스플레이 모듈(260)은, 예를 들면, 도 1에 도시된 디스플레이 모듈(150)일 수 있다. 상기 패널(262)은, 예를 들면, LCD(Liquid-Crystal Display) 또는 AM-OLED(Active-Matrix Organic Light-Emitting Diode) 등일 수 있다. 상기 패널(262)은, 예를 들면, 유연하게(Flexible), 투명하게(Transparent) 또는 착용할 수 있게(Wearable) 구현될 수 있다.
상기 패널(262)은 터치 패널(252)과 하나의 모듈로 구성될 수도 있다. 상기 홀로그램(264)은 빛의 간섭을 이용하여 입체 영상을 허공에 보여줄 수 있다. 일 실시 예에 따르면, 상기 디스플레이 모듈(260)은 패널(262) 또는 홀로그램(264)을 제어하기 위한 제어회로를 더 포함할 수 있다.
상기 인터페이스(270)는, 예를 들면, HDMI(High-Definition Multimedia Interface, 272), USB(Universal Serial Bus, 274), 프로젝터(276) 또는 D-sub(D-subminiature, 278)를 포함할 수 있다. 추가적으로 또는 대체적으로, 상기 인터페이스(270)는, 예를 들면, SD(Secure Digital)/MMC(Multi-Media Card)(미도시) 또는 IrDA(Infrared Data Association, 미도시)를 포함할 수 있다.
상기 오디오 코덱(280)은 음성과 전기신호를 쌍방향으로 변환시킬 수 있다. 상기 오디오 코덱(280)은, 예를 들면, 스피커(282), 리시버(284), 이어폰(286) 또는 마이크(288) 등을 통해 입력 또는 출력되는 음성 정보를 변환시킬 수 있다.
상기 카메라 모듈(291)은 화상 및 동영상을 촬영할 수 있는 장치로서, 일 실시 예에 따르면, 하나 이상의 이미지 센서(예: 전면 렌즈 또는 후면 렌즈), ISP(Image Signal Processor, 미도시) 또는 플래쉬 LED(Flash LED, 미도시)를 포함할 수 있다.
상기 전력관리 모듈(295)은 하드웨어(200)의 전력을 관리할 수 있다. 도시하지는 않았으나, 상기 전력관리 모듈(295)은, 예를 들면, PMIC(Power Management Integrated Circuit), 충전 IC(Charger Integrated Circuit) 또는 배터리 게이지(Battery Fuel Gauge)를 포함할 수 있다.
상기 PMIC는, 예를 들면, 집적회로 또는 SoC 반도체 내에 탑재될 수 있다. 충전 방식은 유선과 무선으로 구분될 수 있다. 상기 충전 IC는 배터리를 충전시킬 수 있으며, 충전기로부터의 과전압 또는 과전류 유입을 방지할 수 있다.
일 실시 예에 따르면, 상기 충전 IC는 유선 충전 방식 또는 무선 충전 방식 중 적어도 하나를 위한 충전 IC를 포함할 수 있다. 무선 충전 방식으로는, 예를 들면, 자기공명 방식, 자기유도 방식 또는 전자기파 방식 등이 있으며, 무선 충전을 위한 부가적인 회로, 예를 들면, 코일 루프, 공진 회로, 정류기 등의 회로가 추가될 수 있다.
상기 배터리 게이지는, 예를 들면, 상기 배터리(296)의 잔량, 충전 중 전압, 전류 또는 온도를 측정할 수 있다. 상기 배터리(296)는 전기를 생성하여 전원을 공급할 수 있고, 예를 들면, 충전식 전지(Rechargeable Battery)일 수 있다.
인디케이터(297)는 하드웨어(200) 혹은 그 일부(예: 상기 AP 211)의 특정 상태, 예를 들면, 부팅 상태, 메시지 상태 또는 충전 상태 등을 표시할 수 있다. 모터(298)는 전기적 신호를 기계적 진동으로 변환할 수 있다. MCU (299)은, 센서 모듈(240)을 제어할 수 있다.
도시되지는 않았으나, 상기 하드웨어(200)는 모바일 TV 지원을 위한 처리 장치(예: GPU)를 포함할 수 있다. 모바일 TV지원을 위한 처리 장치는, 예를 들면, DMB(Digital Multimedia Broadcasting), DVB(Digital Video Broadcasting) 또는 미디어 플로우(Media Flow) 등의 규격에 따른 미디어 데이터를 처리할 수 있다.
본 발명에 따른 하드웨어의 전술한 구성요소들의 명칭은 전자 장치의 종류에 따라서 달라질 수 있다. 본 발명에 따른 하드웨어는 전술한 구성요소 중 적어도 하나를 포함하여 구성될 수 있으며, 일부 구성요소가 생략되거나 또는 추가적인 다른 구성요소를 더 포함할 수 있다.
또한, 본 발명에 따른 하드웨어의 구성 요소들 중 일부가 결합되어 하나의 개체(Entity)로 구성됨으로써, 결합되기 이전의 해당 구성 요소들의 기능을 동일하게 수행할 수 있다.
도 3는, 본 발명의 일 실시 예에 따른 프로그래밍 모듈의 블록 도면이다. 프로그래밍 모듈(300)은, 도 1에 도시된 전자 장치(100)(예: 메모리(130))에 포함(예: 저장)될 수 있다. 상기 프로그래밍 모듈(300)의 적어도 일부는 소프트웨어, 펌웨어, 하드웨어 또는 이들 중 적어도 둘 이상의 조합으로 구성될 수 있다.
상기 프로그래밍 모듈(300)은 하드웨어(예: 하드웨어(200))에 구현되어 전자 장치(예: 전자 장치(100))에 관련된 자원을 제어하는 운용체제(OS: Operation System) 또는 운용체제 상에서 구동되는 다양한 애플리케이션(예: 애플리케이션(370))을 포함할 수 있다.
예를 들면, 상기 운용체제는 안드로이드(Android), iOS, 윈도우즈(Windows), 심비안(Symbian), 타이젠(Tizen) 또는 바다(Bada) 등이 될 수 있다. 도 3를 참조하면, 상기 프로그래밍 모듈(300)은 커널(310), 미들웨어 (330), API(Application Programming Interface, 360) 또는 애플리케이션(370)을 포함할 수 있다.
상기 커널(310)(예: 커널(131))은 시스템 리소스 매니저(311) 또는 디바이스 드라이버(312)를 포함할 수 있다. 상기 시스템 리소스 매니저(311)는, 예를 들면, 프로세스관리부(313), 메모리관리부(315) 또는 파일시스템 관리부(317) 등을 포함할 수 있다.
상기 시스템 리소스 매니저(311)는 시스템 리소스의 제어, 할당 또는 회수 등을 수행할 수 있다. 상기 디바이스 드라이버(312)는, 예를 들면, 디스플레이 드라이버(314), 카메라 드라이버(316), 블루투스 드라이버(318), 공유 메모리 드라이버(320), USB 드라이버(322), 키패드 드라이버(324), WiFi 드라이버(326) 또는 오디오 드라이버(328)를 포함할 수 있다.
또한, 일 실시 예에 따르면, 상기 디바이스 드라이버(312)는 IPC(Inter-Process Communication, 미도시) 드라이버를 포함할 수 있다.
상기 미들웨어(330)는 애플리케이션(370)이 공통적으로 필요로 하는 기능을 제공하기 위해 미리 구현해 놓은 복수의 모듈들을 포함할 수 있다. 또한, 상기 미들웨어(330)는 애플리케이션(370)이 전자 장치 내부의 제한된 시스템 자원을 효율적으로 사용할 수 있도록 API(360)를 통해 기능을 제공할 수 있다.
예를 들면, 도 3에 도시된 바와 같이, 상기 미들웨어(330)(예: 미들웨어(132))는 런타임 라이브러리(335), 어플리케이션 매니저(Application Manager, 341), 윈도우 매니저(Window Manager, 342), 멀티미디어 매니저(Multimedia Manager, 343), 리소스 매니저(Resource Manager, 344), 파워 매니저(Power Manager, 345), 데이터베이스 매니저(Database Manager, 346), 패키지 매니저(347), 연결 매니저(Connectivity Manager, 348), 통지 매니저(Notification Manager, 349), 위치 매니저(Location Manager, 350), 그래픽 매니저(Graphic Manager, 351) 또는 보안 매니저(Security Manager, 352) 중 적어도 하나를 포함할 수 있다.
상기 런타임 라이브러리(335)는, 예를 들면, 애플리케이션(370)이 실행되는 동안에 프로그래밍 언어를 통해 새로운 기능을 추가하기 위해 컴파일러가 사용하는 라이브러리 모듈을 포함할 수 있다. 일 실시 예에 따르면, 런타임 라이브러리(335)는 입출력, 메모리 관리 또는 산술 함수에 대한 기능 등을 수행할 수 있다.
상기 애플리케이션 매니저(341)는, 예를 들면, 애플리케이션(370) 중 적어도 하나의 애플리케이션의 생명주기(Life Cycle)를 관리할 수 있다. 상기 윈도우 매니저(342)는 화면에서 사용하는 GUI 자원을 관리할 수 있다.
상기 멀티미디어 매니저(343)는 다양한 미디어 파일들의 재생에 필요한 포맷을 파악하고, 해당 포맷에 맞는 코덱(Codec)을 이용하여 미디어 파일의 인코딩(Encoding) 또는 디코딩(Decoding)을 수행할 수 있다. 리소스 매니저(344)는 상기 애플리케이션(370) 중 적어도 어느 하나의 애플리케이션의 소스 코드, 메모리 또는 저장 공간 등의 자원을 관리할 수 있다.
상기 파워 매니저(345)는 바이오스(BIOS: Basic Input/Output System) 등과 함께 동작하여 배터리(Battery) 또는 전원을 관리하고, 동작에 필요한 전력 정보 등을 제공할 수 있다. 상기 데이터베이스 매니저(346)는 애플리케이션(370) 중 적어도 하나의 애플리케이션에서 사용할 데이터베이스를 생성, 검색 또는 변경할 수 있도록 관리할 수 있다.
상기 패키지 매니저(347)는 패키지 파일의 형태로 배포되는 애플리케이션의 설치 또는 업 데이트를 관리할 수 있다. 연결 매니저(348)는, 예를 들면, WiFi 또는 블루투스 등의 무선 연결을 관리할 수 있다. 상기 통지 매니저(349)는 도착 메시지, 약속, 근접성 알림 등의 사건(Event)을 사용자에게 방해되지 않는 방식으로 표시 또는 통지할 수 있다. 상기 위치 매니저(350)는 전자 장치의 위치 정보를 관리할 수 있다.
상기 그래픽 매니저(351)는 사용자에게 제공될 그래픽 효과 또는 이와 관련된 사용자 인터페이스를 관리할 수 있다. 상기 보안 매니저(352)는 시스템 보안 또는 사용자 인증 등에 필요한 제반 보안 기능을 제공할 수 있다.
일 실시 예에 따르면, 전자 장치(예: 전자 장치(100))가 전화 기능을 구비한 경우에는, 미들웨어(330)는 전자 장치의 음성 또는 영상 통화 기능을 관리하기 위한 통화 매니저(Telephony Manager, 미도시)를 더 포함할 수 있다.
상기 미들웨어(330)는 전술한 내부 구성요소 모듈들의 다양한 기능 조합을 통해 새로운 미들웨어 모듈을 생성하여 사용할 수 있다. 상기 미들웨어(330)는 차별화된 기능을 제공하기 위해 운용체제의 종류별로 특화된 모듈을 제공할 수 있다.
또한, 상기 미들웨어(330)는 동적으로 기존의 구성요소를 일부 삭제하거나 새로운 구성요소들을 추가할 수 있다. 따라서, 본 발명의 실시 예에 기재된 구성요소를 일부 생략하거나 다른 구성요소를 더 구비하거나 또는 유사한 기능을 수행하는 다른 명칭을 갖는 구성요소로 대체할 수 있다.
상기 API(360)(예: API(133))는 API 프로그래밍 함수들의 집합으로, 운용체제에 따라 다른 구성으로 제공될 수 있다. 예를 들면, 안드로이드 또는 IOS의 경우, 예를 들면, 플랫폼별로 하나의 API 셋을 제공할 수 있으며, 타이젠(Tizen)의 경우, 예를 들면, 두 개 이상의 API 셋을 제공할 수 있다.
상기 애플리케이션(370)(예: 상기 애플리케이션(134))은, 예를 들면, 프리로드 어플리케이션(Preloaded Application) 또는 제 삼자 어플리케이션(Third Party Application)을 포함할 수 있다.
상기 프로그래밍 모듈(300)의 적어도 일부는 컴퓨터로 읽을 수 있는 저장매체(Computer-Readable Storage Media)에 저장된 명령어로 구현될 수 있다. 명령어는, 하나 이상의 프로세서 (예: 상기 프로세서(210))에 의해 실행될 경우, 하나 이상의 프로세서가 명령어에 해당하는 기능을 수행할 수 있다.
컴퓨터로 읽을 수 있는 저장매체는, 예를 들면, 메모리(260)가 될 수 있다. 상기 프로그래밍 모듈(300)의 적어도 일부는, 예를 들면, 프로세서(210)에 의해 구현(Implement) (예: 실행)될 수 있다.
상기 프로그래밍 모듈(300)의 적어도 일부는 하나 이상의 기능을 수행하기 위한, 예를 들면, 모듈, 프로그램, 루틴, 명령어 세트(Sets of instructions) 또는 프로세스 등을 포함할 수 있다.
본 발명에 따른 프로그래밍 모듈(예: 프로그래밍 모듈(300))의 구성요소들의 명칭은 운용체제의 종류에 따라서 달라질 수 있다. 또한, 본 발명에 따른 프로그래밍 모듈은 전술한 구성요소들 중 적어도 하나 이상을 포함하거나, 일부가 생략되거나, 또는 추가적인 다른 구성요소를 더 포함할 수 있다.
이하 첨부된 도면을 참조하여 본 발명의 동작 원리를 상세히 설명한다. 하기에서 본 발명을 설명에 있어 관련된 공지 기능 또는 구성에 대한 구체적인 설명이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명을 생략할 것이다.
그리고, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례 등에 따라 달라질 수 있다. 그러므로 그 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.
이하, 본 발명의 다양한 실시 예에 따른 전자 장치의 컨텐츠 다운로드 방법 및 그 전자 장치에 대해 상세히 설명한다.
본 발명의 다양한 실시 예에 따른 전자 장치는, 도 2에 도시된 구성 요소들을 포함하여 구성될 수 있다. 스마트 폰(smart phone) 또는 태블릿(tablet) PC 등과 같은 다양한 유형의 전자 장치는, 예를 들어, 네트워크 환경에서 단말기(terminal) 등으로 일컬어질 수 있다.
또한, LTE-A, LTE, 그리고 3G 등과 같은 이동 통신망을 통해, 영화 또는 게임 등과 같은 다양한 유형의 컨텐츠를 제공하는 서버(server)는, 예를 들어, 컨텐츠 제공 서버(contents provide server) 등으로 일컬어질 수 있다.
도 4는, 본 발명의 다양한 실시 예에 따른 전자 장치들이 네트워크 그룹(network group)을 형성한 도면이다. 스마트 폰 또는 태블릿 PC 등과 같은 다수의 단말기(terminal)들은, 이동 통신망(403)을 통해 접속한 컨텐츠 제공 서버(400)로부터 영화 또는 게임 등과 같은 다양한 유형의 컨텐츠를 다운로드 받을 수 있다.
도 4에 도시한 바와 같이, 제1 단말기(401), 제2 단말기(402), 그리고 제3 단말기(403)는, WiFi-direct, Bluetooth, 그리고 NFC(Near Field Communication) 중 어느 하나 이상의 근거리(local) 통신을 이용하여, 네트워크 그룹(network group)(404)을 형성할 수 있다.
예를 들어, 상기 제1 단말기(401)은, 자신을 호스트(host) 단말기로 설정한 후, 근거리 통신 방식 중 하나인 WiFi-direct 통신을 이용하여, 상기 제2 단말기(402)와 제3 단말기(403)를, 하나의 네트워크 그룹으로 형성할 수 있다.
더 나아가, 상기 제1 단말기(401)는, 호스트 단말기로서, 상기 제2 단말기(402)를 제1 게스트(guest1) 단말기로 설정하고, 상기 제3 단말기(403)을 제2 게스트(guest2) 단말기로 설정할 수 있다.
상기 네트워크 그룹(404)에 속하는 제1 단말기(401), 제2 단말기(402), 그리고 제3 단말기(403)은, 멀티 캐스트(multi cast)를 통해 서로의 데이터를 실시간(realtime)으로 공유(share)할 수 있다.
이하, 상기 제1 단말기(401), 제2 단말기(402), 그리고 제3 단말기(403)를, 호스트(host) 단말기, 제1 게스트(guest1) 단말기, 그리고 제2 게스트(guest2) 단말기라고 한다.
도 5는, 본 발명의 다양한 실시 예에 따른 전자 장치의 컨텐츠 다운로드 방법에 대한 동작 흐름 도면이다. 도 5에 도시한 바와 같이, 상기 호스트 단말기(401)는, 근거리 통신을 이용하여, 상기 제1 게스트 단말기(402)와 제2 게스트 단말기(403)를 하나의 네트워크 그룹으로 형성한다(S500).
상기 호스트 단말기(401)는, 상기 네트워크 그룹에 속하는 제1 게스트 단말기(402)와 제2 게스트 단말기(403)의 컨텐츠 다운로드 성능을 획득하고(S501), 이동 통신망을 통해 컨텐츠 제공 서버(400)와 인터페이스(interface) 동작을 수행하여(S502), 사용자가 원하는 임의의 한 컨텐츠를 검색한다.
상기 임의의 한 컨텐츠를 검색하는 과정은, 상기 컨텐츠 다운로드 성능을 획득하는 과정 보다 먼저 수행될 수도 있다.
상기 호스트 단말기(401)는, 예를 들어, 상기 컨텐츠 제공 서버(400)와의 인터페이스를 통해, 사용자가 원하는 온라인 게임 컨텐츠의 데이터 용량 등을 확인한 후, 상기 획득된 제1 게스트 단말기(402)와 제2 게스트 단말기(403)의 컨텐츠 다운로드 성능을 기반으로, 상기 제1 게스트 단말기(402)와 제2 게스트 단말기(403)로, 각각 분할하여 다운로드 받을 컨텐츠의 분량을 결정한다(S503).
상기 호스트 단말기(401)는, 상기 결정된 분량의 컨텐츠를, 상기 제1 게스트 단말기와 제2 게스트 단말기로 각각 분할하여 다운로드하고 나머지 분량의 컨텐츠를 호스트 단말기인 자신에게로 분할하여 다운로드 할 것을 요구하는 요구(request) 메시지를 생성한 후, 상기 컨텐츠 제공 서버(400)로 전송한다(S504).
상기 컨텐츠 제공 서버(400)는, 상기 요구 메시지에 따라, 오리지널(original) 컨텐츠를, 상기 결정된 컨텐츠의 분량으로 분할한 후, 상기 분할된 분량의 컨텐츠를, 상기 제1 게스트 단말기(402)와 제2 게스트 단말기로 각각 다운로드 하고, 나머지 분량의 컨텐츠를 호스트 단말기(401)로 분할하여 다운로드 한다(S505).
상기 호스트 단말기(401)와 제1 게스트 단말기(402), 그리고 제2 게스트 단말기(403)는, 상기와 같은 과정을 거쳐, 상기 컨텐츠 제공 서버(400)로부터 분할 전송되는 컨텐츠를 다운로드 받으면서, 상기 다운로드 되는 데이터를 상기 근거리 통신을 이용하여 실시간으로 서로 공유하는 멀티 캐스트(multicast) 동작을 수행한다(S506).
그리고, 상기와 같은 다운로드 동작(S507)과 멀티 캐스트 동작(S508)을 반복적으로 수행하여, 상기 호스트 단말기(401)와 제1 게스트 단말기(402), 그리고 제2 게스트 단말기(403)에서, 상기 컨텐츠의 다운로드 동작을 완료하면(S509, S501, S511), 이후 사용자의 요청에 따라, 상기 다운로드 완료된 컨텐츠를 동시에 실행시켜, 그룹 플레이(group play)를 수행한다(S512).
이에 따라, 네트워크 그룹에 속한 각 단말기들의 컨텐츠 다운로드 완료 시간이 단축되고, 그룹 플레이를 실행할 수 있는 시점까지의 사용자 대기 시간이 단축될 수 있다.
도 6은, 본 발명의 다양한 실시 예에 따른 호스트 단말기의 컨텐츠 다운로드 방법에 대한 동작 흐름 도면이다. 예를 들어, 스마트 폰 또는 태블릿 PC 등과 같은 제1 단말기(401), 제2 단말기(402), 그리고 제3 단말기(403)는, LTE-A 단말기, LTE 단말기, 그리고 3G 단말기일 수 있다.
상기 LTE-A 단말기인 제1 단말기(401)의 프로세서는, 자신을 호스트(Host) 단말기로 설정하고(S600), 상기 LTE 단말기인 제2 단말기(402)와, 상기 3G 단말기(403)인 제3 단말기(403)를, 제1 게스트(guest 1) 단말기와 제2 게스트(guest 2) 단말기로 각각 설정하여, 하나의 네트워크 그룹을 형성할 수 있다(S601).
예를 들어, 상기 네트워크 그룹은, 근거리 통신 방식 중 하나인 WiFi-direct 방식을 통해 형성될 수 있으며, 더 나아가, Bluetooth 또는 NFC(Near Field Communication) 등과 같은 다양한 유형의 근거리 통신 방식을 통해 형성될 수도 있다.
이후, 상기 호스트 단말기(401)의 프로세서는, 상기 제1 게스트 단말기(402)와 제2 게스트 단말기(403)가 접속 중인 이동 통신망의 종류와, 상기 네트워크 그룹의 형성에 사용된 근거리 통신 모듈의 종류 등에 기반하여, 상기 제1 게스트 단말기(402)와 제2 게스트 단말기(403)의 컨텐츠 다운로드 성능(download performance)을 각각 획득(acquisition)한다(S602).
예를 들어, 호스트 단말기의 프로세서는, 게스트 단말기가 접속 중인 이동 통신망의 종류가, LTE-A, LTE, 그리고 3G 중 어느 하나 이상인 지를 확인하고, 더 나아가, 네트워크 그룹을 형성한 근거리 통신 모듈의 종류가, WiFi 모듈, Bluetooth 모듈, 그리고 NFC 모듈 중 어느 하나 이상인 지를 확인한다.
그리고, 상기 확인 결과에 따라, 게스트 단말기의 컨텐츠 다운로드 성능을 획득한다. 예를 들어, 상기 컨텐츠 다운로드 성능은, 3G(예: 20Mbps), LTE(예: 80Mbps), 그리고 LTE-A(예: 150Mbps) 순으로 높아지며, NFC 모듈, Bluetooth 모듈, 그리고 WiFi 모듈 순으로 높아질 수 있다.
더 나아가, 각 근거리 통신 모듈의 분류 등급(class)에 따라 컨텐츠 다운로드 성능이 달라질 수 있다. 상기 게스트 단말기의 컨텐츠 다운로드 성능은, 네트워크 그룹의 형성에 사용된 근거리 통신 모듈의 종류에 의해 종속될 수 있다.
예를 들어, 제1 게스트 단말기(402)의 LTE 속도가 80Mbps 라고 하더라도, 상기 제1 게스트 단말기(401)의 근거리 통신 모듈인 WiFi 모듈의 데이터 전송 속도가 50Mbps이면, 상기 제1 게스트 단말기(401)의 컨텐츠 다운로드 성능은, 상기 WiFi 모듈의 데이터 전송 속도인 50Mbps로 종속될 수 있다.
이는, 전술한 바와 같이, 이동 통신망을 통해 다운로드 되는 컨텐츠를, 근거리 통신망을 통해 실시간으로 멀티 캐스트 하여, 네트워크 그룹에 속한 각 단말기들이 서로 공유해야 하기 때문이다.
즉, 이동 통신망의 컨텐츠 다운로드 속도가 빠르더라도, 근거리 통신망의 멀티 캐스트 속도가 느리면, 결국 멀티 캐스트 속도에 종속되므로, 각 단말기들이 컨텐츠 다운로드 및 멀티 캐스트를 수행하여, 컨텐츠의 전체 데이터를 모두 수신하는 데 소요되는 시간이 길어지기 때문이다.
상기 호스트 단말기(401)의 프로세서는, 상기와 같이 획득된 제1 게스트 단말기(402)의 컨텐츠 다운로드 성능과, 상기 제2 게스트 단말기(403)의 컨텐츠 다운로드 성능에 기반하여, 각 게스트 단말기에서 다운로드 받을 컨텐츠의 분량을 결정한다(S603).
예를 들어, 호스트 단말기(401)와 제1 게스트 단말기(402), 그리고 제2 게스트 단말기(403)의 컨텐츠 다운로드 성능이, 100Mbps, 50Mbps, 그리고 20Mbps이고, 컨텐츠 제공 서버(400)에서 다운로드 받을 온라인 게임 컨텐츠의 데이터 용량이 1,700,000MB이면, 상기 호스트 단말기(401)와 제1 게스트 단말기(402), 그리고 제2 게스트 단말기(403)에서 다운로드 받을 컨텐츠의 분량을 1,000,000MB, 500,000MB, 그리고 200,000MB로 결정한다.
그리고, 상기 호스트 단말기(401)의 프로세서는, 상기와 같이 결정된 분량의 컨텐츠를, 상기 제1 게스트 단말기(402)와 제2 게스트 단말기(403)로 각각 다운로드하고 나머지 분량의 컨텐츠를 호스트 단말기인 자신에게로 분할하여 다운로드 할 것을 요구하는 요구(request) 메시지를 생성한 후, 상기 컨텐츠 제공 서버(400)로 전송한다(S604).
도 7은, 본 발명의 다양한 실시 예에 따른 호스트 단말기에서 컨텐츠 제공 서버로 전송되는 요구 메시지의 구성 요소를 도시한 도면이다. 도 7에 도시한 바와 같이, 상기 요구 메시지의 구성 요소에는, 예를 들어, acess_token, deviceIP, deviceId, transferRange, 그리고 hostYn 등과 같은 다양한 파라미터(parameter)가 포함될 수 있으며, 여기서, device는 terminal로 변경될 수 있다.
상기 acess_token은, 어플리케이션 프로그램 인터페이스(API: application program interface)의 인증 키(authentication key)로 사용될 수 있고, 상기 deviceIP와 deviceId는, 컨텐츠를 다운로드 받을 단말기의 접속 정보와 식별 정보로 사용될 수 있다.
상기 transferRange는, 단말기에서 다운로드 받을 컨텐츠의 분량 또는 구간으로 사용될 수 있고, 상기 hostYn은, 단말기가 호스트 단말기인 지의 여부를 나타내는 식별 값으로 사용될 수 있다.
도 8은, 본 발명의 다양한 실시 예에 따른 호스트에서 컨텐츠 제공 서버로 전송되는 요구 메시지를 도시한 도면이다. 도 8에 도시한 바와 같이, 상기 요구 메시지는, URL, HEADER, 그리고 BODY 등으로 구분될 수 있다.
상기 BODY에는, 예를 들어, 호스트 단말기의 접속 정보로서, deviceIp "231.293.99.12"와 호스트 단말기의 식별 정보로서, deviceId "1"와, 호스트 단말기가 다운로드 받을 컨텐츠의 분량 또는 구간 정보로서, transferRange "0 - 1000000", 그리고 호스트 단말기임을 나타내는 정보로서, hostYn "y"를 포함할 수 있다.
또한, 상기 BODY에는, 제1 게스트 단말기의 접속 정보로서, deviceIp "231.293.99.23" 와, 제1 게스트 단말기의 식별 정보로서, deviceId "2"와, 제1 게스트 단말기가 다운로드 받을 컨텐츠의 분량 또는 구간 정보로서, transferRange "1000000 - 1500000", 그리고 호스트 단말기가 아님을 나타내는 정보로서, hostYn "n" 을 포함할 수 있다.
그리고, 상기 BODY에는, 제2 게스트 단말기의 접속 정보로서, deviceIp "231.293.99.162"와, 제2 게스트 단말기의 식별 정보로서, deviceId "3"와 제2 게스트 단말기가 다운로드 받을 컨텐츠의 분량 또는 구간 정보로서, transferRange "1500001 - 1700000", 그리고 호스트 단말기가 아님을 나타내는 정보로서, hostYn "n" 을 포함할 수 있다.
도 9는, 본 발명의 다양한 실시 예에 따라 컨텐츠의 다운로드 및 공유되는 과정을 도시한 도면이다. 상기 컨텐츠 제공 서버(400)는, 예를 들어, 도 9에 도시한 바와 같이, 상기 요구 메시지에 따라, 임의의 오리지널(original) 컨텐츠를, 3 개의 부분 컨텐츠(partial contents 1,2,3)로 분할한 후, 상기 호스트 단말기(401)와 제1 게스트 단말기(402), 그리고 제2 게스트 단말기(403)로, 동시에 각각 다운로드 하는 컨텐츠 분할 다운로드 동작을 수행한다.
이에 따라, 상기 호스트 단말기(401)에는, "0 - 1000000" 구간의 제1 부분 컨텐츠(partial contents 1)가 다운로드 되고, 상기 제1 게스트 단말기(402)에는, "1000001 - 1500000" 구간의 제2 부분 컨텐츠(partial contents 2)가 다운로드 되고, 상기 제2 게스트 단말기(403)에는, "1500001 - 1700000" 구간의 제3 부분 컨텐츠(partial contents 3)가 다운로드 된다.
상기 호스트 단말기(401)는, 상기와 같이 "0 - 1000000" 구간의 제1 부분 컨텐츠가 다운로드 되기 시작하면(S605), 근거리 통신을 이용하여 네트워크 그룹을 형성한 제1 게스트 단말기(402)와 제2 게스트 단말기(403)로, 상기 다운로드 되는 제1 부분 컨텐츠를 멀티 캐스팅하여 공유한다(S606).
상기 제1 게스트 단말기(402)는, 상기와 같이 "1000001 - 1500000" 구간의 제2 부분 컨텐츠가 다운로드 되기 시작하면, 근거리 통신을 이용하여 네트워크 그룹을 형성한 호스트 단말기(401)와 제2 게스트 단말기(403)로, 상기 다운로드 되는 제2 부분 컨텐츠를 멀티 캐스팅하여 공유한다.
상기 제2 게스트 단말기(403)는, 상기와 같이 "1500001 - 1700000" 구간의 제3 부분 컨텐츠가 다운로드 되기 시작하면, 근거리 통신을 이용하여 네트워크 그룹을 형성한 호스트 단말기(401)와 제1 게스트 단말기(402)로, 상기 다운로드 되는 제3 부분 컨텐츠를 멀티 캐스팅하여 공유한다.
상기와 같은 다운로드 및 멀티 캐스트 동작을 수행하여, 컨텐츠 다운로드 동작이 완료되면(S607), 상기 호스트 단말기(401)는, 그룹 플레이 대기(group play standby) 모드를 설정하고(S608), 이후 사용자의 요청에 따라, 근거리 통신을 이용하여 그룹 플레이 동작을 수행한다(S609).
예를 들어, 도 9에 도시한 바와 같이, 상기 호스트 단말기(401)는, 제1 부분 컨텐츠를 이동 통신망을 통해 다운로드 받고, 나머지 부분을 제1 게스트 단말기(402)와 제2 게스트 단말기(403)의 멀티 캐스트 동작을 통해 공유한다.
상기 제1 게스트 단말기(402)는, 제2 부분 컨텐츠를 이동 통신망을 통해 다운로드 받고, 나머지 부분을 호스트 단말기(401)와 제2 게스트 단말기(403)의 멀티 캐스트 동작을 통해 공유한다.
상기 제2 게스트 단말기(403)는, 제3 부분 컨텐츠를 이동 통신망을 통해 다운로드 받고, 나머지 부분을 호스트 단말기(401)와 제1 게스트 단말기(402)의 멀티 캐스트 동작을 통해 공유한다.
도 10은, 본 발명의 다양한 실시 예에 따라 각 단말기들에서 컨텐츠 다운로드 동작이 동시에 완료되는 도면이다. 상기와 같이 다운로드 및 멀티 캐스트 동작을 통해 컨텐츠 다운로드 동작이 정상적으로 완료되면, 도 10에 도시한 바와 같이, 상기 호스트 단말기(401)와 제1 게스트 단말기(402), 그리고 제2 게스트 단말기(403)의 디스플레이 화면에는, 컨텐츠 다운로드 완료(download complete)를 알리는 안내 메시지가, 동일한 시간에 디스플레이 되거나, 또는 허용 오차 시간 범위 내에서 디스플레이 될 수 있다.
이에 따라, 상기 네트워크 그룹에 속한 각 단말기들의 컨텐츠 다운로드 완료 시간이 단축되고, 그룹 플레이를 실행할 수 있는 시점까지의 사용자 대기 시간이 단축된다.
더 나아가, 네트워크 그룹에 속한 임의의 단말기가, 컨텐츠를 제공하는 사업자 네트워크에 가입되어 있지 않더라도, 네트워크 그룹에 속한 각 단말기들 간의 멀티 캐스트를 통해, 컨텐츠를 공유할 수 있게 된다.
한편, 상기 제1 게스트 단말기(402)와 제2 게스트 단말기(403)는, 상기 컨텐츠 제공 서버(400)로부터 다운로드 동작이 정상적으로 완료되면, 그 사실을 알리기 위한 통지(notify) 메시지를 생성하여, 상기 호스트 단말기(401)로 전송할 수 있다.
상기 호스트 단말기(401)는, 상기 통지 메시지의 수신 여부에 따라, 컨텐츠 다운로드 동작이 정상적으로 완료되는 지를 판단할 수 있다. 더 나아가, 상기 호스트 단말기(401)는, 상기 제1 게스트 단말기(402)와 제2 게스트 단말기(403)의 멀티 캐스트 동작을 통해 수신하는 데이터 량을 감시하여, 컨텐츠 다운로드 동작이 정상적으로 수행되고 있는 지를 판단할 수도 있다.
상기 호스트 단말기(401)는, 상기와 같이 통지 메시지의 수신 여부, 또는 멀티 캐스트 동작을 통해 수신하는 데이터 량을 감시한 결과, 컨텐츠 다운 로드 동작이 비정상적으로 수행되고 있으면, 제1 게스트 단말기(402)와 제2 게스트 단말기(403)에서 다운로드 받을 컨텐츠의 분량을 재 결정한 후, 그에 상응하는 요구 메시지를 생성하여 컨텐츠 제공 서버(400)로 재 전송할 수도 있다.
더 나아가, 상기 호스트 단말기(401)는, 상기 컨텐츠 제공 서버(400)와의 인터페이스 동작을 수행하여, 사전에 설정된 일정 량의 데이터를 테스트(test) 용으로 각 단말기에 다운로드 한 후, 정상적인 다운로드가 수행되는 지를 미리 판단하여, 각 단말기에서 다운로드 받을 컨텐츠의 분량을 결정함으로써, 네트워크 환경 등을 반영한 보다 최적화된 컨텐츠 분할 다운로드 동작이 수행되도록 할 수도 있다.
본 발명의 청구항 또는 명세서에 기재된 실시 예들에 따른 방법들은 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합의 형태로 구현될(Implemented) 수 있다.
소프트웨어로 구현하는 경우, 하나 이상의 프로그램(소프트웨어 모듈)을 저장하는 컴퓨터 판독 가능 저장 매체가 제공될 수 있다. 컴퓨터 판독 가능 저장 매체에 저장되는 하나 이상의 프로그램은, 전자 장치(Device) 내의 하나 이상의 프로세서에 의해 실행 가능하도록 구성된다(Configured for execution).
하나 이상의 프로그램은, 전자 장치로 하여금 본 발명의 청구항 또는 명세서에 기재된 실시 예들에 따른 방법들을 실행하게 하는 명령어(Instructions)를 포함한다.
이러한 프로그램(소프트웨어 모듈, 소프트웨어)은 랜덤 액세스 메모리 (Random Access Memory), 플래시(Flash) 메모리를 포함하는 불휘발성(Non-Volatile) 메모리, 롬(ROM: Read Only Memory), 전기적 삭제가능 프로그램가능 롬(EEPROM: Electrically Erasable Programmable Read Only Memory), 자기 디스크 저장 장치(Magnetic Disc Storage Device), 컴팩트 디스크 롬(CD-ROM: Compact Disc-ROM), DVD(Digital Video Disk) 또는 다른 형태의 광학 저장 장치, 마그네틱 카세트(Magnetic Cassette)에 저장될 수 있다.
또는, 이들의 일부 또는 전부의 조합으로 구성된 메모리에 저장될 수 있다. 또한, 각각의 구성 메모리는 다수 개 포함될 수도 있다.
또한, 상기 프로그램은 인터넷(Internet), 인트라넷(Intranet), LAN(Local Area Network), WLAN(Wide LAN), 또는 SAN(Storage Area Network)과 같은 통신 네트워크, 또는 이들의 조합으로 구성된 통신 네트워크를 통하여 접근(Access)할 수 있는 부착 가능한(Attachable) 저장 장치(Storage Device)에 저장될 수 있다. 이러한 저장 장치는 외부 포트를 통하여 본 발명의 실시 예를 수행하는 장치에 접속할 수 있다. 또한, 통신 네트워크상의 별도의 저장장치가 본 발명의 실시 예를 수행하는 장치에 접속할 수도 있다.
상술한 본 발명의 구체적인 실시 예들에서, 발명에 포함되는 구성 요소는 제시된 구체적인 실시 예에 따라 단수 또는 복수로 표현되었다. 그러나, 단수 또는 복수의 표현은 설명의 편의를 위해 제시한 상황에 적합하게 선택된 것으로서, 본 발명이 단수 또는 복수의 구성 요소에 제한되는 것은 아니며, 복수로 표현된 구성 요소라하더라도 단수로 구성되거나, 단수로 표현된 구성 요소라 하더라도 복수로 구성될 수 있다.
한편 본 발명의 상세한 설명에서는 구체적인 실시 예에 관해 설명하였으나, 본 발명의 범위에서 벗어나지 않는 한도 내에서 여러 가지 변형이 가능함은 물론이다. 그러므로 본 발명의 범위는 설명된 실시 예에 국한되어 정해져서는 아니 되며 후술하는 특허청구의 범위뿐만 아니라 이 특허청구의 범위와 균등한 것들에 의해 정해져야 한다.
100: 전자 장치 102: 전자 장치
104: 전자 장치 110: 버스
120: 프로세서 130: 메모리
131: 커널 132: 미들웨어
133: 애플리케이션 프로그래밍 인터페이스
140: 사용자 입력모듈 150: 디스플레이 모듈
160: 통신 모듈 162: 네트워크
164: 서버 200: 전자 장치
210: 프로세서 211: 애플리케이션 프로세서
213: 커뮤니케이션 프로세서 214: SIM 카드
220: 메모리 222: 내장 메모리
224: 외장 메모리 230: 통신 모듈
231: 무선 통신 모듈 234: RF 모듈
233: WiFi 235: BT
237: GPS 239: NFC
240: 센서 모듈 240A: 제스처 센서
240B: 자이로 센서 240C: 기압 센서
240D: 마그네틱 센서 240E: 가속도 센서
240F: 그립 센서 240G: 근접 센서
240H: RGB 센서 240I: 생체 센서
240J: 온/습도 센서 240K: 조도 센서
240M: UV 센서 250: 사용자 입력모듈
252: 터치 패널 254: 펜 센서
256: 키 258: 울트라 소닉
260: 디스플레이 모듈 262: 패널
264: 홀로그램 270: 인터페이스
272: HDMI 274: USB
276: 프로젝터 278: D-SUB
280: 오디오 코덱 282: 스피커
284: 리시버 286: 이어폰
288: 마이크 291: 카메라 모듈
295: 전력 관리 모듈 296: 배터리
297: 인디케이터 298: 모터
300: 전자 장치 310: 커널
311: 시스템 리소스 매니저 312: 디바이스 드라이버
330: 미들웨어 341: 애플리케이션 매니저
342: 윈도우 매니저 343: 멀티미디어 매니저
344: 리소스 매니저 345: 파워 매니저
346: 데이터베이스 매니저 347: 패키지 매니저
348: 연결 매니저 349: 통지 매니저
350: 위치 매니저 351: 그래픽 매니저
352: 보안 매니저 355: 런타임 라이브러리
360: API 370: 애플리케이션
371: 홈 372: 다이얼러
373:SMS/MMS 374: IM
375: 브라우저 376: 카메라
377: 알람 378: 컨텐트
379: 음성 다이얼 380: 이메일
381: 달력 382: 미디어 플레이어
383: 앨범 384: 시계
400: 컨텐츠 제공 서버 401: 호스트 단말기
402 : 제1 게스트 단말기 403 : 제2 게스트 단말기

Claims (20)

  1. 전자 장치의 동작 방법에 있어서,
    호스트 단말기로서, 게스트 단말기와 네트워크 그룹을 형성하는 과정;
    상기 게스트 단말기가 접속 중인 이동 통신망의 종류, 및 상기 네트워크 그룹의 형성에 사용된 근거리 통신 모듈의 종류에 기반하여, 상기 게스트 단말기의 컨텐츠 다운로드 성능을 획득하는 과정;
    상기 게스트 단말기에서 다운로드 받을 컨텐츠의 분량을 결정하는 과정;
    상기 결정된 분량의 컨텐츠를 게스트 단말기로 분할하여 다운로드하고 나머지 분량의 컨텐츠를 호스트 단말기로 분할하여 다운로드 할 것을 요구하는 메시지를, 컨텐츠 제공 서버로 전송하는 과정; 및
    상기 호스트 단말기는, 상기 컨텐츠 제공 서버와의 인터페이스 동작을 수행하여, 사전에 설정된 일정 량의 데이터를 테스트 용으로 각 단말기에 다운로드 한 후, 정상적인 다운로드가 수행되는지를 미리 판단하여, 각 단말기에서 다운로드 받을 컨텐츠의 분량을 결정하는 과정을 포함하는 방법.
  2. 제1항에 있어서,
    상기 형성하는 과정은, WiFi-direct, Bluetooth 그리고 NFC(Near Field Communication) 중 어느 하나 이상의 근거리 통신을 통해 네트워크 그룹을 형성하는 방법.
  3. 삭제
  4. 제1항에 있어서,
    상기 이동 통신망의 종류는, LTE-A, LTE, 그리고 3G 중 어느 하나 이상이고,
    상기 근거리 통신 모듈의 종류는, WiFi 모듈, Bluetooth 모듈, 그리고 NFC 모듈 중 어느 하나 이상인 방법.
  5. 제1항에 있어서,
    상기 게스트 단말기에서 다운로드 받을 컨텐츠의 분량은, 상기 네트워크 그룹의 형성에 사용된 근거리 통신 모듈의 종류에 의해 종속되는 방법.
  6. 제1항에 있어서,
    상기 결정하는 과정은, 상기 네트워크 그룹을 형성하는 호스트 단말기의 컨텐츠 다운로드 성능과 게스트 단말기의 컨텐츠 다운로드 성능에 비례하여, 각 단말기에서 다운로드 받을 컨텐츠의 분량을 결정하는 방법.
  7. 제1항에 있어서,
    상기 메시지는, 단말기 접속 정보, 단말기 식별 정보, 컨텐츠 분량 정보, 그리고 호스트 여부를 나타내는 정보 중 어느 하나 이상을 포함하는 방법.
  8. 제7항에 있어서,
    상기 컨텐츠 제공 서버는, 상기 메시지에 상응하여, 각 단말기별 다운로드 될 컨텐츠의 구간을 분할하고, 상기 분할된 구간의 컨텐츠를 각 단말기로 전송하는 방법.
  9. 제1항에 있어서,
    상기 호스트 단말기와 게스트 단말기는, 상기 컨텐츠 제공 서버로부터 다운로드 받은 컨텐츠를, 상기 네트워크 그룹 내의 멀티 캐스트를 통해 공유하는 방법.
  10. 제1항에 있어서,
    상기 게스트 단말기는, 상기 컨텐츠 제공 서버로부터 다운로드가 정상 완료되면, 상기 호스트 단말기로 통지 메시지를 전송하고,
    상기 호스트 단말기는, 상기 통지 메시지에 기반하여, 컨텐츠 다운로드 동작이 정상 완료인지를 판별하는 방법.
  11. 전자 장치에 있어서,
    이동 통신망에 접속하기 위한 이동 통신 모듈;
    근거리 통신망에 접속하기 위한 근거리 통신 모듈; 및
    상기 이동 통신 모듈과 근거리 통신 모듈의 동작을 제어하기 위한 프로세서를 포함하되,
    상기 프로세서는:
    호스트 단말기로서, 게스트 단말기와 네트워크 그룹을 형성한 후, 상기 게스트 단말기가 접속 중인 이동 통신망의 종류, 및 상기 네트워크 그룹의 형성에 사용된 상기 근거리 통신 모듈의 종류에 기반하여, 상기 게스트 단말기의 컨텐츠 다운로드 성능을 획득하여, 상기 게스트 단말기에서 다운로드 받을 컨텐츠의 분량을 결정하고,
    상기 분량의 컨텐츠를 게스트 단말기로 분할하여 다운로드하고 나머지 분량의 컨텐츠를 호스트 단말기로 분할하여 다운로드 할 것을 요구하는 메시지를, 컨텐츠 제공 서버로 전송하고,
    상기 호스트 단말기는, 상기 컨텐츠 제공 서버와의 인터페이스 동작을 수행하여, 사전에 설정된 일정 량의 데이터를 테스트 용으로 각 단말기에 다운로드 한 후, 정상적인 다운로드가 수행되는지를 미리 판단하여, 각 단말기에서 다운로드 받을 컨텐츠의 분량을 결정하는 장치.
  12. 제11항에 있어서,
    상기 프로세서는, WiFi-direct, Bluetooth 그리고 NFC(Near Field Communication) 중 어느 하나 이상의 근거리 통신을 통해 네트워크 그룹을 형성하는 장치.
  13. 삭제
  14. 제11항에 있어서,
    상기 이동 통신망의 종류는, LTE-A, LTE, 그리고 3G 중 어느 하나 이상이고,
    상기 근거리 통신 모듈의 종류는, WiFi 모듈, Bluetooth 모듈, 그리고 NFC 모듈 중 어느 하나 이상인 장치.
  15. 제11항에 있어서,
    상기 게스트 단말기에서 다운로드 받을 컨텐츠의 분량은, 상기 네트워크 그룹의 형성에 사용된 근거리 통신 모듈의 종류에 의해 종속되는 장치.
  16. 제11항에 있어서,
    상기 프로세서는, 상기 네트워크 그룹을 형성하는 호스트 단말기의 컨텐츠 다운로드 성능과 게스트 단말기의 컨텐츠 다운로드 성능에 비례하여, 각 단말기에서 다운로드 받을 컨텐츠의 분량을 결정하는 장치.
  17. 제11항에 있어서,
    상기 메시지는, 단말기 접속 정보, 단말기 식별 정보, 컨텐츠 분량 정보, 그리고 호스트 여부를 나타내는 정보 중 어느 하나 이상을 포함하는 장치.
  18. 제17항에 있어서,
    상기 컨텐츠 제공 서버는, 상기 메시지에 상응하여, 각 단말기별 다운로드 될 컨텐츠의 구간을 분할하고, 상기 분할된 구간의 컨텐츠를 각 단말기로 전송하는 장치.
  19. 제11항에 있어서,
    상기 호스트 단말기와 게스트 단말기는, 상기 컨텐츠 제공 서버로부터 다운로드 받은 컨텐츠를, 상기 네트워크 그룹 내의 멀티 캐스트를 통해 공유하는 장치.
  20. 제1항의 방법을 수행하기 위한 프로그램이 저장된 컴퓨터 판독 가능 저장매체.
KR1020130153987A 2013-12-11 2013-12-11 전자 장치의 컨텐츠 다운로드 방법 및 그 전자 장치 KR102240526B1 (ko)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020130153987A KR102240526B1 (ko) 2013-12-11 2013-12-11 전자 장치의 컨텐츠 다운로드 방법 및 그 전자 장치
US14/558,882 US10284614B2 (en) 2013-12-11 2014-12-03 Method for downloading contents of electronic device and electronic device thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130153987A KR102240526B1 (ko) 2013-12-11 2013-12-11 전자 장치의 컨텐츠 다운로드 방법 및 그 전자 장치

Publications (2)

Publication Number Publication Date
KR20150068136A KR20150068136A (ko) 2015-06-19
KR102240526B1 true KR102240526B1 (ko) 2021-04-16

Family

ID=53272348

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130153987A KR102240526B1 (ko) 2013-12-11 2013-12-11 전자 장치의 컨텐츠 다운로드 방법 및 그 전자 장치

Country Status (2)

Country Link
US (1) US10284614B2 (ko)
KR (1) KR102240526B1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5486118B1 (ja) * 2013-06-27 2014-05-07 グリー株式会社 ゲーム媒体群編成方法、制御プログラム及びコンピュータ
FR3021477A1 (fr) * 2014-05-26 2015-11-27 Orange Telechargement de contenu et mise a disposition de reseaux de telecommunications etendus en vue d'un tel telechargement.
KR102018815B1 (ko) 2014-10-24 2019-11-04 삼성전자주식회사 주변 기기를 활용하여 원격 태스크를 수행하는 방법 및 디바이스
US10484494B2 (en) 2016-06-29 2019-11-19 Rovi Guides, Inc. Methods and systems for alerting users regarding availability of unconsumed content
US10489319B2 (en) * 2016-12-20 2019-11-26 Atmel Corporation Automatic transmission of dummy bits in bus master

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040203800A1 (en) * 2002-10-24 2004-10-14 John Myhre System and method for content delivery using alternate data paths in a wireless network
KR101109246B1 (ko) * 2004-07-07 2012-01-30 마이크로소프트 코포레이션 피어-투-피어 컴퓨터 네트워크에서의 효율적인 일대다콘텐츠 배포 방법

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20010044339A1 (en) * 2000-02-17 2001-11-22 Angel Cordero Multi-player computer game, system and method
US7912218B2 (en) * 2003-07-04 2011-03-22 Nxp B.V. Method of broadcasting multimedia content via distribution network
US20060190616A1 (en) * 2005-02-04 2006-08-24 John Mayerhofer System and method for aggregating, delivering and sharing audio content
US20060179079A1 (en) * 2005-02-09 2006-08-10 Mikko Kolehmainen System, method and apparatus for data transfer between computing hosts
US20060224760A1 (en) * 2005-03-15 2006-10-05 1000 Oaks Hu Lian Technology Development (Beijing) Co., Ltd. Method and system for providing streaming content in a peer-to-peer network with network coding
KR101501100B1 (ko) * 2006-08-10 2015-03-30 에스케이플래닛 주식회사 콘텐츠 다운로드 시스템 및 콘텐츠 서버 시스템 및운용방법
US8126001B2 (en) * 2008-12-01 2012-02-28 Electronic And Telecommunications Research Institute Method and apparatus for multicasting contents between devices in networks
US9386075B2 (en) * 2009-12-08 2016-07-05 At&T Intellectual Property I, L.P. Flexible download destination
US8655985B2 (en) * 2010-11-15 2014-02-18 International Business Machines Corporation Content delivery using multiple sources over heterogeneous interfaces
KR20120110936A (ko) * 2011-03-30 2012-10-10 삼성전자주식회사 컨텐츠 다운로드 서비스 제공 시스템 및 방법
US20130132469A1 (en) * 2011-11-23 2013-05-23 Warner Bros. Entertainment, Inc. Electronic content delivery using diversified networks
KR20130082915A (ko) 2011-12-22 2013-07-22 주식회사 케이티 콘텐츠를 분할하고 분할된 콘텐츠를 제공하는 서버 및 방법, 그리고 사용 이력을 관리하는 서버
KR20130078463A (ko) 2011-12-30 2013-07-10 삼성전자주식회사 이동 통신 시스템에서 멀티캐스트 서비스 방법 및 장치
KR101328030B1 (ko) 2012-01-13 2013-11-13 에스케이텔레콤 주식회사 이기종 네트워크 기반 데이터 동시 전송 장치 및 방법
US9119087B2 (en) * 2012-09-28 2015-08-25 Intel Corporation Systems and methods for hybrid wireless content delivery

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040203800A1 (en) * 2002-10-24 2004-10-14 John Myhre System and method for content delivery using alternate data paths in a wireless network
KR101109246B1 (ko) * 2004-07-07 2012-01-30 마이크로소프트 코포레이션 피어-투-피어 컴퓨터 네트워크에서의 효율적인 일대다콘텐츠 배포 방법

Also Published As

Publication number Publication date
KR20150068136A (ko) 2015-06-19
US10284614B2 (en) 2019-05-07
US20150163269A1 (en) 2015-06-11

Similar Documents

Publication Publication Date Title
KR102147088B1 (ko) 전자장치에서 수신된 정보를 사용자에게 제공하기 위한 방법 및 장치
KR102076280B1 (ko) 이동 통신 시스템에서 전자 장치의 통신 수행 방법 및 장치
KR102122476B1 (ko) 화면의 회전을 컨트롤할 수 있는 전자 장치 및 방법
KR102107132B1 (ko) 전자 장치의 억세스 포인트 접속 방법 및 그 전자 장치
KR102206351B1 (ko) 전자 장치 및 이의 작업 연계 방법
US11030143B2 (en) System for sharing content between electronic devices, and content sharing method for electronic device
US10999501B2 (en) Electronic device and method for controlling display of panorama image
US20160007084A1 (en) Method and apparatus for sharing data of electronic device
KR102277460B1 (ko) 화면을 공유하기 위한 방법 및 그 전자 장치
KR102216881B1 (ko) 전자장치에서 마이크의 감도에 따른 자동 이득 조절 방법 및 장치
US9696428B2 (en) Electronic device and method for measuring position information of electronic device
US9538248B2 (en) Method for sharing broadcast channel information and electronic device thereof
US10432926B2 (en) Method for transmitting contents and electronic device thereof
KR102157858B1 (ko) 전력 소모를 줄일 수 있는 전자 장치 및 방법
KR102240526B1 (ko) 전자 장치의 컨텐츠 다운로드 방법 및 그 전자 장치
KR20150075140A (ko) 전자 장치의 메시지 제어 방법 및 그 전자 장치
US9948732B2 (en) Method for providing status messaging service in electronic device and the electronic device thereof
KR20150051497A (ko) 전자 장치의 적외선 통신 방법 및 그 전자 장치
KR20150066876A (ko) 사용자 인터페이스 제어 방법 및 그 전자 장치
KR102187227B1 (ko) 컨텐츠 생성 방법 및 그 전자 장치
KR20150051078A (ko) 전자 장치의 락 스크린 디스플레이 방법 및 그 전자 장치
KR102213429B1 (ko) 사운드 제공 방법 및 이를 구현하는 전자 장치
KR20150026257A (ko) 액세서리의 정보를 업 데이트하는 전자 장치 및 방법
US20150341827A1 (en) Method and electronic device for managing data flow
KR102089629B1 (ko) 데이터 처리 방법 및 그 방법을 처리하는 전자장치

Legal Events

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