KR20190067764A - 차량 기반 무선 네트워크에서 컨텐츠를 분배하는 시스템 및 방법 - Google Patents

차량 기반 무선 네트워크에서 컨텐츠를 분배하는 시스템 및 방법 Download PDF

Info

Publication number
KR20190067764A
KR20190067764A KR1020197004151A KR20197004151A KR20190067764A KR 20190067764 A KR20190067764 A KR 20190067764A KR 1020197004151 A KR1020197004151 A KR 1020197004151A KR 20197004151 A KR20197004151 A KR 20197004151A KR 20190067764 A KR20190067764 A KR 20190067764A
Authority
KR
South Korea
Prior art keywords
network
content
vehicle
content item
devices
Prior art date
Application number
KR1020197004151A
Other languages
English (en)
Other versions
KR102274185B1 (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 유니움 엘엘씨
Publication of KR20190067764A publication Critical patent/KR20190067764A/ko
Application granted granted Critical
Publication of KR102274185B1 publication Critical patent/KR102274185B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W40/00Communication routing or communication path finding
    • H04W40/34Modification of an existing route
    • H04W40/38Modification of an existing route adapting due to varying relative distances between nodes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/123Applying verification of the received information received data contents, e.g. message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity
    • H04W12/106Packet or message integrity
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W28/00Network traffic management; Network resource management
    • H04W28/02Traffic management, e.g. flow control or congestion control
    • H04W28/10Flow control between communication endpoints
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/06Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/18Information format or content conversion, e.g. adaptation by the network of the transmitted or received information for the purpose of wireless delivery to users or terminals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • H04W4/44Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for communication between vehicles and infrastructures, e.g. vehicle-to-cloud [V2C] or vehicle-to-home [V2H]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/60Subscription-based services using application servers or record carriers, e.g. SIM application toolkits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/20Manipulation of established connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/40Connection management for selective distribution or broadcast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices
    • H04W88/04Terminal devices adapted for relaying to or from another terminal or user
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/10Connection setup
    • H04W76/14Direct-mode setup
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W76/00Connection management
    • H04W76/20Manipulation of established connections
    • H04W76/23Manipulation of direct-mode connections
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/005Moving wireless networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/04Large scale networks; Deep hierarchical networks
    • H04W84/042Public Land Mobile systems, e.g. cellular systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/10Small scale networks; Flat hierarchical networks
    • H04W84/12WLAN [Wireless Local Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/18Self-organising networks, e.g. ad-hoc networks or sensor networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

이를테면, 차량 기반 무선 네트워크의 맥락에서 컨텐츠를 모바일 컴퓨팅 장치에 분배하기 위한 기술이 설명된다. 일부 예에서, 컨텐츠 제공자는 초기에, 셀룰러 네트워크를 사용하여 컨텐츠 아이템을 제 1 차량의 멀티-네트워크 통신 장치에 송신한다. 그 다음, 제 1 차량 장치는 로컬 Wi-Fi 네트워크를 사용하여, 컨텐츠 아이템의 랜덤으로 선택된 부분을 인근 차량 상의 장치에 추가로 송신하며, 이 장치는 또한 컨텐츠 아이템 부분을 다른 차량에 추가로 전파할 수 있다. 차량 장치는 또한, 특히 로컬 Wi-Fi 통신을 통해 이웃 차량 장치에 요청을 브로드캐스트함으로써 그리고/또는 셀룰러 네트워크를 통해 컨텐츠 제공자와 통신함으로써 컨텐츠 부분을 요청할 수 있다. 시간 경과와 같은 조건의 발생 시에, 컨텐츠 제공자는 또한 컨텐츠 아이템의 완전한 분배를 보장하기 위해 네트워크 내의 장치와의 통신을 개시할 수 있다.

Description

차량 기반 무선 네트워크에서 컨텐츠를 분배하는 시스템 및 방법
우선권 주장
본 출원은 "SYSTEMS AND METHODS FOR DISTRIBUTING CONTENT IN A VEHICLE- BASED WIRELESS NETWORK"란 명칭으로 2016년 10월 4일에 출원된 미국 특허 출원 번호 제 15/285,108 호 및 "SYSTEMS AND METHODS FOR DISTRIBUTING CONTENT IN A VEHICLE-BASED WIRELESS NETWORK"란 명칭으로 2016년 10월 4일에 출원된 미국 특허 출원 번호 제 15/285,072호 를 우선권으로 주장하며, 둘 모두는 "SYSTEMS AND METHODS FOR DISTRIBUTING CONTENT IN A VEHICLE-BASED WIRELESS NETWORK"란 명칭으로 2016년 7월 12일에 출원된 미국 가출원 번호 제 62/361,368 호를 우선권으로 주장하며, 이들 모두의 내용은 그 전체가 인용에 의해 본원에 통합된다.
기술 분야
본 개시내용은 컨텐츠를 모바일 컴퓨팅 장치에 분배하기 위한 방법, 기술 및 시스템에 관한 것으로, 더 상세하게는, 차량 기반 무선 네트워크를 통해 컨텐츠를 효율적으로 분배하기 위한 방법, 기술 및 시스템에 관한 것이다.
컨텐츠 제공자, 이를테면, 차량 제조자, 플릿(fleet) 운영자/관리자, 미디어 제공자 및 다른 엔티티 및 조직은 차량에 컨텐츠 아이템을 분배할 필요가 있다. 예를 들어, 차량 제조자는 특정 자동차 모델의 하나 이상의 서브시스템(예를 들어, 엔진 제어, 미디어 센터, 네비게이션 시스템)에 대한 소프트웨어를 업데이트하고자 할 수 있다. 역사적으로, 이러한 업데이트는 서비스 센터의 기술자에 의해 수행되는 수동 업데이트를 통해서만 가능했다.
차량은 점차, 셀룰러 폰 네트워크, Wi-Fi, Bluetooth 등을 통한 통신을 가능하게 하는 무선 통신 장치를 포함한다. 이러한 부가적인 통신 메커니즘은 기술자, 운영자, 소유자 또는 다른 당사자의 물리적 존재 또는 수동적 개입 없이, 차량이 현장에 있는 동안 컨텐츠 제공자가 컨텐츠 아이템을 "무선으로(over the air)" 분배할 수 있게 한다.
도 1a 및 도 1b는 셀룰러 무선 네트워크를 사용하여 차량에 대한 컨텐츠 아이템의 무선(over the air) 분배에 대한 종래 기술의 접근법을 예시한다. 도 1a에서, 캐리어(110)는, 컨텐츠 아이템 A를 다수의 자동차들(101a-101e) 각각에 송신하기 위해 컨텐츠 제공자(112)에 의해 사용되는 셀룰러 네트워크를 운용한다. 컨텐츠 아이템을 예를 들어, 자동차(101a)에 송신하기 위해, 컨텐츠 제공자(112)는 (캐리어(110))를 통해) 셀룰러 통신 장치(도시되지 않음)에 자동차(101a)를 연결하고, 그 후 설정된 연결을 통해 컨텐츠 아이템을 송신한다. 이러한 프로세스는 각각의 모든 자동차(101a-101e)에 대해 반복된다. 이 예에서, 컨텐츠 제공자(112)는 컨텐츠 아이템 A를 각각의 자동차(101a-101e)에 한 번씩, 전부 5번 송신한다.
도 1b는 종래 기술의 컨텐츠 분배 프로세스를 예시하는 순서도이다. 도 1b에서, 캐리어(110)는 다수의 통신 장치(102a-102c) 각각과 통신한다. 통신 장치(102a-102c)는 대응하는 차량에 각각 설치된 셀룰러 통신 장치일 수 있다. 캐리어는 전용 연결을 통해 장치(102a-102c) 각각에 전체 컨텐츠 아이템을 송신한다. 캐리어 요금은 통상적으로 송신되는 데이터의 양을 기초하기 때문에, 하나의 컨텐츠 아이템의 분배 비용은 목적지 장치(차량)의 수에 비례한다.
도 1a 및 도 1b는 셀룰러 무선 네트워크를 사용하여 차량에 대한 컨텐츠 아이템의 분배에 대한 종래 기술의 접근법을 예시한다.
도 2a 및 도 2b는 예시적인 실시예에 따라 차량에 대한 컨텐츠 아이템의 분배를 예시한다.
도 3은 예시적인 실시예에 따른 컨텐츠 아이템 분배 프로세스를 예시하는 순서도이다.
도 4a 내지 도 4d는 예시적인 실시예에 따른 자동 레이트 제어를 예시한다.
도 5는 예시적인 실시예에 따른 자동 레이트 제어 프로세스를 예시하는 순서도이다.
도 6a 내지 6m은 예시적인 실시예에 의해 수행된 컨텐츠 분배 프로세스의 예시적인 흐름도이다.
도 7은 예시적인 실시예에 따라 컨텐츠 분배를 구현하고 수행하기 위한 예시적인 컴퓨팅 시스템 또는 장치의 블록도이다.
본 명세서에 설명된 실시예는, 컨텐츠를 모바일 컴퓨팅 장치에 효율적으로 분배하기 위한 향상된 컴퓨터 기반 방법 및 네트워크 기반 방법, 장치 및 시스템 및 보다 구체적으로, 차량 기반 무선 네트워크를 통해 컨텐츠를 효율적으로 분배하기 위한 방법, 기술 및 시스템을 제공한다.
이하, 섹션 1은 컨텐츠 분배 아키텍처의 개요를 제공한다. 섹션 2는 일부 실시예에 의해 구현되는 컨텐츠 분배 프로세스를 설명한다. 섹션 3은 처리량(throughput), 네트워크 연결성 및/또는 범위를 최적화하거나 적어도 개선하기 위해 통신 장치가 그의 전송 레이트를 독립적으로 변동시키는 자동 레이트 제어 기술을 설명한다.
1. 개요
도 2a 및 도 2b는 예시적인 실시예에 따라 차량에 대한 컨텐츠 아이템의 분배를 예시한다. 도 1a와 관련하여 설명된 종래 기술의 접근법과 대조적으로, 컨텐츠 아이템은 도 2a에서 캐리어(110)에 의해 자동차(101a-101e)의 서브세트로 송신되고, 그 후, 컨텐츠 아이템은 자동차(101a-101e)의 서브세트로부터 제 2 네트워크를 통해, 이를테면, 자동차(101a-101e) 사이에 설정된 하나 이상의 Wi-Fi 네트워크를 통해 다른 자동차에 추가로 분배된다.
도 2a의 예에서, 컨텐츠 제공자(112)는 초기에 컨텐츠 아이템 A를 자동차(101a)에 송신하기 위해 캐리어(110)에 의해 관리되는 셀룰러 네트워크를 사용한다. 컨텐츠 아이템 A는 부분("세그먼트들"로서 또한 지칭됨)으로 분해된다. 이 예에서 컨텐츠 아이템 A는 3개의 부분(A1, A2 및 A3)으로 분해된다. 컨텐츠 아이템을 세그먼트팅하는 것은, 전체 컨텐츠 아이템이 재송신될 필요가 없기 때문에, 드롭된 송신에 직면하여 개선된 재시작 동작을 허용한다. 또한, 컨텐츠 아이템을 세그먼트팅하는 것은 다수의 별개의 엔티티가 컨텐츠 아이템의 다양한 부분에 대한 소스로서 동작할 수 있게 하고, 그리하여 본원에서 설명된 피어-투-피어(peer-to-peer) 분배 기술을 가능하게 한다.
자동차(101a)가 부분(A1-A3) 중 하나 이상을 수신하면, 자동차(101a)는 수신된 부분을 다른 자동차에 분배하기 시작할 수 있다. 이 예에서, 자동차(101a)는 하나 이상의 Wi-Fi 네트워크를 통해 부분(A2 및 A3)을 자동차(101b)에 송신하고; 부분(A1 및 A2)을 자동차(101c)에 송신하고; 부분(A1 및 A3)을 자동차(101d)에 송신하고; 및 부분(A1)을 자동차(101e)에 송신한다.
하나의 자동차로부터 다른 자동차로 송신되는 부분은 다양한 방식으로 선택될 수 있다. 바람직한 실시예에서, 부분은 랜덤으로 선택된다. 예를 들어, 자동차(101a)는 부분(A1)을 랜덤으로 선택하고 그 후 Wi-Fi 트랜시버를 통해 그 부분을 브로드캐스트할 수 있다. 자동차(101a)로부터 Wi-Fi 송신 범위 내에 있는 다른 모든 자동차는 부분(A1)을 수신할 것이다. 부분(A1)을 송신했으면, 자동차(101a)는 송신을 위해 다른 부분을 선택하는 식이다. 일부 실시예에서, 송신된 부분은 모든 다른 부분이 적어도 한번 송신될 때까지 재송신되지 않을 것이다. 자동차(101a)가 부분(A1-A3) 모두를 적어도 한번 송신하면, 자동차(101a)는 한번 더 그 부분의 세트를 랜덤으로 분배하기 시작할 수 있다. 다른 실시예에서, 자동차(101a)는 랜덤 선택을 통하는 대신에, 순차적으로 부분(A1-A3)을 연속적으로 송신한다.
다른 차량(101b-101e)은 컨텐츠 아이템의 부분을 수신하기 때문에, 이들은 또한 수신된 부분을 다른 자동차에 분배하기 시작한다. 예를 들어, 자동차(101a)로부터 부분(A1)을 수신한 자동차(101c)는 그 부분을 자동차(101b)로 송신한다. 또한, 자동차(101e) 및 자동차(101d)는 부분(A2 및 A3)을 교환한다.
컨텐츠 제공자(112)는 자동차(101a) 이외의 다른 자동차에 부분을 송신하기 위해 캐리어(110)의 셀룰러 네트워크를 사용할 수 있다는 것에 주의한다. 일부 경우에, 컨텐츠 아이템 A의 하나 이상의 부분은, 컨텐츠 아이템의 부분을 더 많은 자동차에 공급하기 위해 다른 자동차에 "푸시"될 수 있다. 대안적으로, 부분은 온-디맨드(on-demand) 방식으로 송신될 수 있다. 예를 들어, 자신이 이웃 자동차로부터 컨텐츠 부분(A3)을 아직 수신하지 못했다는 것을 이해하는 자동차(101c)는 셀룰러 네트워크를 통해 컨텐츠 제공자(112)에 컨텐츠 부분(A3)을 요청하여 획득할 수 있다.
일부 실시예에서, 컨텐츠 제공자(112)는 각각의 모든 차량이 컨텐츠 아이템을 수신했음을 보장하기 위해 (캐리어(110)를 통해) 자동차(101a-101e) 각각과 상호작용할 것이란 점에 주의한다. 예를 들어, 컨텐츠 제공자(112)는 초기에 전체 컨텐츠 아이템을 자동차(101a-101e)의 일부 서브세트에 송신할 수 있다. 그 후, 컨텐츠 제공자(112)는 자동차의 초기 서브세트가 자신의 Wi-Fi 트랜시버를 통해 자신의 컨텐츠를 공유할 수 있게 하기 위해 대기할 것이다. 대기 시간은 미리 결정되거나(예를 들어, 4, 8, 24 또는 48 시간) 또는 조건에 기초할 수 있다(예를 들어, 평균 자동차가 컨텐츠의 적어도 N%를 수신했을 때).
예를 들어, 컨텐츠 제공자(112)는 컨텐츠 아이템이 얼마만큼 분배되었는지를 추정하기 위해 자동차의 서브세트를 주기적으로 샘플링할 수 있다. 컨텐츠 아이템의 특정된 부분(fraction)보다 많은 부분이 분배될 때, 컨텐츠 제공자(112)는 (캐리어를 통해) 추가로 상호작용하여, 잔여 컨텐츠 부분을 요청하는 자동차에 이를 송신할 수 있다. 다른 접근법에서, 컨텐츠 제공자(112)는 컨텐츠 아이템의 분배의 변화율을 모니터링한다. 예를 들어, 컨텐츠 제공자는 평균 자동차로 단위 시간당 수신된 바이트의 수를 (샘플링을 통해) 모니터링할 수 있다. 그 후, 변화율이 일부 임계치 아래로 드롭되거나, 안정되기 시작하거나, 다른 일부 조건과 매칭할 때, 컨텐츠 제공자(112)는 (캐리어를 통해) 추가의 상호작용에 참여하여 임의의 잔여 컨텐츠 부분을 송신한다.
이러한 조건부 분배를 사용함으로써, 컨텐츠 제공자(112)는 합리적인 정확한 방식으로 시간에 대한 캐리어 비용을 트레이드 오프(trade off)할 수 있다는 것에 주의한다. 예를 들어, 자동차가 컨텐츠 아이템의 50%를 (공유를 통해) 수신할 때까지 대기함으로써, 캐리어는 캐리어 비용을 약 50% 절약할 것으로 기대할 수 있다.
도 2b는 도 2a의 컨텐츠 분배 프로세스를 예시하는 순서도이다. 도 2b에서, 캐리어(110)는 다수의 통신 장치들(100a-100c) 각각과 통신한다. 도 2a와 관련하여, 통신 장치(100a-100c)는 대응하는 차량에 각각 설치된 멀티-네트워크 통신 장치일 수 있다. 다른 맥락에서, 통신 장치는 인간 사용자에 의해 휴대되는 개인용 모바일 장치(예를 들어, 스마트폰)일 수 있다. 멀티-네트워크 통신 장치(100)는 아래의 도 7과 관련하여 보다 상세히 설명된다.
도 2b의 시나리오에서, 캐리어(110)는 전체 컨텐츠 아이템을 장치(100a)에 송신한다. 그 후, 장치(100a)는 컨텐츠 아이템의 적어도 일부를 장치(100b)에 송신한다. 위에서 언급된 바와 같이, 장치(100a)에 의해 공유되는 컨텐츠는 랜덤으로 또는 임의의 다른 메커니즘에 의해 선택될 수 있다. 장치(100b)는 이를테면, 하나 이상의 누락 부분에 대한 요청을 캐리어(110)에 송신함으로써, 캐리어(110)로부터 컨텐츠 아이템의 잔여부를 획득한다. 또한, 장치(100b)는 이를테면, 장치(100a)로부터 그리고 캐리어(110)로부터 직접적으로 수신된 부분을 송신함으로써 컨텐츠 아이템을 장치(100c)에 송신한다.
도 2a 및 도 2b의 예에서, 컨텐츠 제공자는 하나 이상의 원격 장치에 컨텐츠 아이템의 어떤 부분도 송신하지 않는다는 것에 주의한다. 예를 들어, 도 2a에서, 자동차(101d) 및 자동차(101b)는 컨텐츠 제공자와 전혀 상호작용할 필요 없이(그리고 상응하게, 셀룰러 네트워크를 활용할 필요가 없음), 다른 자동차로부터 전체 컨텐츠 아이템(부분(A1 내지 A3))을 획득한다. 또한, 도 2b에서, 장치(100c)는 장치(100b)로부터 컨텐츠 아이템 전체를 획득하고 어떠한 방식으로도 캐리어(110)와 상호작용하지 않는다.
멀티-네트워크 통신 장치는 또한 위치가 고정될 수 있다. 예를 들어, 운송(transportation) 관련 맥락에서, 이러한 장치는 네트워크에서 차량에 컨텐츠 및/또는 다른 데이터(예를 들어, 교통 흐름 데이터, 경고, 도로 조건 데이터)의 분배를 용이하게 하기 위해 도로 근처에 로케이팅될 수 있다. 개인용 모바일 장치 맥락에서, 컨텐츠의 분배를 용이하게 하기 위해 일부 고정 포지션 장치가 또한 사용될 수 있다. 예를 들어, 장치는 직장, 대학 캠퍼스, 공장 또는 다른 시설에 걸쳐 로케이팅될 수 있어서, 이들은 개인용 모바일 장치로 그리고 이로부터 데이터를 송신 및 수신할 수 있다. 고정 위치 장치는 본원에서 논의된 바와 같은 설명된 모바일 장치의 특성 전부 또는 그 일부를 가질 수 있다. 구체적으로, 이들이 (셀룰러 네트워크를 통해) 컨텐츠 분배자로부터 컨텐츠를 수신하고 그 컨텐츠를 (Wi-Fi 네트워크를 통해) 다른 장치로 포워딩할 수 있다는 점에서, 이들은 모바일 장치와 유사한 방식으로 동작하는 멀티-네트워크 장치일 수 있다. 이들은 또한 (Wi-Fi를 통해) 지나가는 차량으로부터 수신된 컨텐츠 부분을 다른 차량으로 (Wi-Fi를 통해) 송신할 수 있다.
2. 컨텐츠 분배
도 3은 예시적인 실시예에 따른 컨텐츠 아이템 분배 프로세스를 예시하는 순서도이다. 보다 구체적으로, 도 3은 캐리어(110)와 2개의 멀티-네트워크 통신 장치(100a 및 100b) 간의 상호작용을 도시한다.
먼저, 캐리어(110)는 장치(100a)에 알림(announcement)을 송신한다. 알림은 통상적으로 캐리어(110)에 의해 분배되는 컨텐츠 아이템을 식별하는 메시지이다. 메시지는 통상적으로 캐리어(110) 및/또는 컨텐츠 제공자(112)에 의해 서명되어서, 장치(100a)는 메시지의 진본성(authenticity) 및 소스를 평가할 수 있다.
장치(100a)가 알림을 수신하면, 장치(100a)는 그것이 식별된 컨텐츠 아이템이나 그의 어떠한 부분도 아직 수신하지 않았다고 결정한다. 이에 응답하여, 장치(100a)는 전체 컨텐츠 아이템에 대한 요청을 캐리어(110)에 송신한다. 이에 응답하여, 캐리어(110)는 프루프의 세트(set of proof) 및 컨텐츠 아이템을 장치(100a)에 송신한다. 프루프는 분배되는 컨텐츠 아이템을 형성하는 부분을 안전하게 식별한다. 프루프는 이를테면, 각각의 컨텐츠 아이템의 암호화 해시를 포함함으로써, 장치(100a)(또는 일부 다른 장치)가 각각의 부분의 진본성 및/또는 컨텐츠를 검증할 수 있게 한다. 일 실시예에서, 프루프는 Merkle 트리로 또한 알려진 해시 트리에 기초한다. 트리의 잎(leave)은 각각의 컨텐츠 부분의 해시이며, 트리의 각각의 내부 노드는 자식 노드의 해시들의 연결(concatenation)의 해시이다. 루트 노드 해시는 통상적으로 캐리어 또는 컨텐츠 분배자에 의해 디지털 방식으로 서명되어서, 루트 해시가 진본으로서 검증될 수 있다. 진본 루트 노드가 주어지면, 다른 노드는 신뢰 소스로부터 획득되거나 다른 방식으로 서명될 필요가 없는데, 그 이유는 다른 노드의 무결성 및 진본성은 궁극적으로 루트 해시와 관련되어 검증될 수 있기 때문이다. 해시 트리를 사용하는 이점은 장치(100a)가 전체 트리를 수신하지 않고 임의의 수신된 컨텐츠 부분의 무결성을 인증 및/또는 검증할 수 있고 그리하여 컨텐츠 부분의 랜덤 분배를 가능하게 한다는 것이다. 예를 들어, 단일 컨텐츠 부분을 인증하기 위해, 장치는 컨텐츠 부분 및 트리 루트와 컨텐츠 부분 사이의 트리 브랜치만을 소유할 필요가 있다.
다음으로, 캐리어(110)는 통상적으로 컨텐츠 부분을 순차적으로 송신함으로써 컨텐츠 아이템을 장치(100a)로 송신하기 시작한다. 장치(100a)가 컨텐츠 부분 중 적어도 일부를 수신하면, 장치(100a)는 부분을 이웃 장치에 랜덤으로 브로드캐스트하기 시작한다.
이 예에서, 장치(100b)는 제 1 부분을 수신한다. 각각의 부분은 그의 대응하는 컨텐츠 아이템(예를 들어, 컨텐츠 아이템의 고유한 파일명)을 식별한다. 식별된 컨텐츠 아이템을 전혀 수신하지 못하면, 장치(100b)는 대응하는 알림 및 프루프를 장치(100a)에 요청한다. 이에 응답하여, 장치(100a)는 알림 및 프루프를 장치(100b)에 포워딩한다.
장치(100a)는 그것이 컨텐츠 아이템을 그의 이웃과 공유하는 분배 루프를 실행한다. 컨텐츠 아이템은 컨텐츠 부분을 랜덤으로 선택 및 브로드캐스트하고 그리고/또는 특정 컨텐츠 부분에 대한 요청에 응답함으로써 공유된다. 상이한 유형의 요청이 고려된다. 예를 들어, 장치(100b)는 컨텐츠 식별자 및 하나 이상의 부분 식별자(예를 들어, 세그먼트 리스트)를 포함하는 요청을 송신(예를 들어, 브로드캐스트)할 수 있다. 이러한 요청은 예를 들어, 장치(100b)가 특정 컨텐츠 아이템을 완료하기 위해 하나 이상의 컨텐츠 부분을 탐색하는 경우에 송신될 수 있다.
장치(100a)에 의해 수행되는 분배 루프의 동작 및 종료는 다양한 요인에 의해 좌우될 수 있다. 예를 들어, 루프는 컨텐츠 아이템에 대한 알림에 의해 특정될 수 있는 것과 같은 일정 길이의 시간 동안 동작할 수 있다. 대안적으로, 루프는 (예를 들어, 컨텐츠 부분에 대한 요청의 수에 기초하여 측정된 바와 같은) 요구(demand)가 특정 레벨(예를 들어, 분당 하나의 요청 미만) 아래로 떨어질 때까지 동작할 수 있다. 다른 실시예에서, 피어 차량이 컨텐츠 부분의 총 수의 특정된 평균 부분 또는 할당량(share)을 적어도 수신할 때까지(예를 들어, 각각의 장치가 부분의 적어도 90%를 수신할 때까지) 루프가 동작할 수 있다. 장치에 의해 수신된 부분들의 수는 특정 부분에 대한 요청에 수신된(또는 누락) 부분의 수를 편입시킴으로써 결정될 수 있다. 일부 실시예에서, 분배 루프는 일부 정지 조건(예를 들어, 이웃 장치가 부분의 적어도 90%를 수신함)이 도달될 때까지 랜덤 분배를 수행하고, 그 후 특정 부분에 대한 요청이 서비스되지만 어떠한 랜덤 분배도 발생하지 않는 온-디멘드 모드에서만 분배 루프를 지속한다. 분배 루프의 종료 후에, 장치(100a)는 추가의 알림, 명령어 및/또는 요청을 기다리는 유휴 상태에 진입한다.
장치(100b)는 또한 캐리어(110)로부터 알림을 수신하며, 이는 장치(100b)가 누락 부분을 캐리어(110)에 요청할 수 있는 상호작용을 트리거한다. 다른 실시예에서, 장치(100b)는 캐리어(110)로부터의 알림 또는 다른 초기 통신을 기다리지 않고 캐리어(110)로부터 누락 부분을 획득하는 프로세스를 개시한다. 장치(100b)와 캐리어(110) 사이의 이러한 상호작용은, 모든 장치가 전체 컨텐츠 아이템을 수신했음을 컨텐츠 제공자가 보장할 수 있게 한다. 이러한 부가적인 상호작용은, 소정의 컨텐츠가 특정된 차량의 세트(예를 들어, 플릿, 주어진 메이커/모델/연도의 모든 차량, 또는 주어진 지리적 위치의 모든 차량)의 모든 차량에 분배되도록 요구하는 규정을 컨텐츠 제공자가 준수하기 위해 필요할 수 있다.
일부 실시예에서, 시간의 경과 또는 다른 조건의 발생 후에, 컨텐츠 제공자는 모든 장치가 컨텐츠 아이템을 수신했음을 보장하기 위한 액션을 취한다. 예를 들어, 소정의 시간이 경과한 후, 컨텐츠 제공자는 임의의 누락 부분을 제공하기 위해 각각의 장치와의 통신을 (셀룰러 네트워크를 통해) 개시한다.
3. 자동 레이트 제어
도 4a 내지 도 4d는 예시적인 실시예에 따른 자동 레이트 제어를 예시한다. 일부 실시예는 처리량, 네트워크 연결성 및/또는 범위를 최적화하거나 적어도 개선하기 위해 주어진 네트워크에서 각각의 통신 장치에 의해 사용되는 송신 레이트를 독립적으로 변동시킨다.
도 4a는 균일한 송신 레이트의 사용과 연관된 문제를 예시한다. 도 4a는 장치의 집합을 도시한다. 각각의 장치는 원 중심에 도트(점)로서 표현된다. 원은 주어진 장치의 송신 범위를 표현한다. 제 1 장치의 원이 제 2 장치를 표현하는 도트를 포함할 때, 제 1 장치는 제 2 장치에 데이터를 송신할 수 있다. 유사하게, 제 1 장치의 원이 제 2 장치를 표현하는 도트를 포함하지 않을 때, 제 1 장치는 제 2 장치에 데이터를 송신할 수 없다.
도 4a는 본원에서 설명된 차량 기반 네트워크와 같은 동적 모바일 네트워크에서의 노드의 예시적인 분배를 예시한다. 알 수 있는 바와 같이, 예시된 네트워크의 노드는 균일하게 분배되지 않는다. 장치(100a-100c)와 같은 일부 노드는 노드의 클러스터 내에 로케이팅된다. 각각의 장치(100a-100c)는 적어도 하나의 다른 장치에 데이터를 송신할 수 있는데, 이는 100a-100c의 원들 각각이 적어도 하나의 다른 도트를 포함한다는 사실에 의해 예시된다.
장치(100d-100f)와 같은 다른 노드는 변두리 구역에 로케이팅된다. 장치(100d-100f)는 어떠한 다른 장치에도 데이터를 송신할 수 없고, 이에 따라, 예시된 네트워크로부터 효과적으로 배제된다. 물론, 네트워크 연결성 및 도달(reach)이 개선되도록 각각의 장치의 송신 범위를 증가시키는 것이 가능하다. 범위는 상이한 방식으로, 이를테면, 송신 전력을 증가시킴으로써 증가될 수 있다. 주어진 전력 레벨에서, 데이터 레이트를 낮춤으로써 범위를 증가될 수 있다. 데이터 레이트와 범위 사이에 역의 관계가 존재한다. 예를 들어, 54, 24, 12 Mbps 송신은 각각, 35, 100 및 200 미터의 옥외 범위를 가질 수 있다. 규정은 통상적으로 무선 라디오에 의해 사용될 수 있는 최대 송신 전력을 제한한다는 점을 감안하면, 데이터 레이트를 수정하는 것이 일부 맥락에서 송신 범위를 수정하기 위한 바람직한 방식이다.
도 4a의 예에서, (전력이 일정하게 유지될 때) 송신 범위와 데이터 레이트 사이의 역의 관계를 감안하면, 모든 라디오의 데이터 레이트를 단순히 감소시키는 것은 네트워크의 전반적인 성능이 저하되게 할 것이다. 특히, 모든 장치가(더 낮은 데이터 레이트의 비용으로) 송신 범위를 증가시키는 경우, 장치는 더 완전히 연결될 것이지만 각각의 장치에 대한 더 낮은 송신 레이트의 비용이 든다. 아래에서 추가로 논의되는 바와 같이, 설명된 자동 레이트 제어 기술은 각각의 장치에 의해 사용된 데이터 레이트를 독립적으로 그리고 동적으로 수정함으로써 이 문제를 해결한다.
도 4b 내지 도 4d는 설명의 목적으로 단지 3개의 장치(100a-100c)를 포함하는 예시적인 소형 네트워크의 맥락에서 문제 및 제안된 솔루션을 예시한다.
도 4b는 도 4a와 관련하여 소개된 문제를 예시한다. 도 4b에서, 장치(100a-100c)는 각각, 비교적 높지만, 상응하게 범위가 짧은 균일한 데이터 송신 레이트를 사용한다. 장치(100a 및 100b)는 서로의 송신 범위 내에 로케이팅되는 반면, 장치(100c)는 장치(100a 및 100b)의 범위 밖에 있다.
도 4c는 도 4b의 문제에 대한 단순한 솔루션을 예시한다. 도 4c에서, 장치(100a-100c)는 각각, (예를 들어, 도 4b의 것과 비교하면) 비교적 낮지만, 상응하게 범위가 긴 균일한 데이터 송신 레이트를 사용한다. 따라서, 각각의 장치는 적어도 하나의 다른 장치에 송신할 수 있다. 증가된 송신 범위는 더 낮은 송신 데이터 레이트를 희생시키면서 연결성을 완전하게 한다.
도 4d는 도 4b의 문제에 대한 바람직한 솔루션을 예시한다. 도 4d에서, 장치(100a-100c)는 각각, 가능한 경우 높은 데이터 레이트 외에도, 높은 연결성을 제공하도록 조정되는 데이터 송신 레이트를 사용한다. 예를 들어, 밀집되게 클러스터링된 장치(100a 및 100b)는 고속 데이터 레이트(대응하는 짧은 범위를 가짐)를 사용하는 반면, 변두리 장치(100c)는 낮은 데이터 레이트(대응하는 긴 범위를 가짐)를 사용한다. 도 4d에서, 각각의 장치는 적어도 하나의 다른 장치에 송신할 수 있지만, 장치들 중 적어도 일부는 도 4c에서 예시된 것보다 더 높은 레이트로 데이터를 송신할 수 있어, 종합적인 성능을 증가시킨다.
도 5는 예시적인 실시예에 따른 자동 레이트 제어 프로세스를 예시하는 순서도이다. 도 5와 관련하여 설명된 자동 레이트 제어 프로세스는 도 4d와 관련하여 도시된 것과 유사한 구성을 획득하려고 하며, 각각의 장치는 장치의 네트워크의 동적 지리적 레이아웃에 적응되는 데이터 레이트를 사용한다. 일반적으로, 도시된 프로세스의 동작 시에, 밀집되게 클러스터링된 장치는 높은 데이터 레이트 및 상응하게 짧은 범위로 송신할 것인 반면, 변두리 장치는 낮은 데이터 레이트 및 상응하게 긴 범위로 송신할 것이다.
도 5에서, 3개의 장치(100a-100c)는 네트워크 성능 및 도달성을 최적화 또는 개선하기 위해 데이터 레이트를 동적으로 조정한다. 이 예에서, 공간적 관점에서, 장치(100a 및 100c)는 변두리 노드인 반면, 장치(100b)는 더 중앙에 로케이팅된다.
도 5의 프로세스의 동작은 통상적으로 도 3과 관련하여 설명된 것과 같은 포괄적인 피어 투 피어 분배 프로세스의 맥락에서 발생한다. 초기 조건에서, 장치(100a-100c)는 도 5a 및 도 5b와 관련하여 설명된 바와 같이 차선의 방식으로 데이터를 송신한다. 장치(100a)는 장치(100b)와 직접 통신할 수 있지만 장치(100c)와 직접 통신할 수 없다. 유사하게, 장치(100c)는 장치(100b)와 직접 통신할 수 있지만, 장치(100a)와 직접 통신할 수 없다. 이러한 연결성 제한으로 인해, 장치(100c)에 의해 장치(100a)로 송신된 부분은 먼저 장치(100b)에 송신되어야 하며, 장치(100b)는 그 후 추가로 그 부분을 목적지 장치(100a)에 송신한다. 이 시나리오에서, 적어도, 장치(100c)가 장치(100a)에 데이터를 송신하는 것이 가능할지라도, 그러한 통신은 장치(100b) 그 자체의 자원에 가해지는 부가적인 부담 외에도, 장치(100b)를 통한 부가적인 요구된 "홉"으로 인해 성능 불이익을 초래할 가능성이 높다.
연결성 및 성능을 개선하기 위해, 각각의 장치(100a-100b)는 다음 로직에 따라 그의 데이터 레이트를 조정한다. 각각의 장치는 "공중"(다른 장치와의 통신에 사용되는 무선 채널 또는 주파수)이 유휴 상태인 시간의 부분으로서 여기서 표현되는 현재의 캐리어 또는 매체 활용 레벨을 모니터링한다. 캐리어가 50% 미만의 유휴 상태인 경우, 데이터 레이트는 증가된다. 이는, 통상적으로 캐리어의 사용을 위해 다수의 장치가 경쟁하는 장치의 클러스터에 로케이팅되는 장치에 의해 경험되는 조건이다. 데이터 레이트를 증가시킴으로써, 장치에 대한 송신 범위는 감소할 것이고 유휴 시간의 부분은 증가할 것이다. 도 4a의 시나리오에서, 이는 중앙 클러스터의 장치에 대응하는 원(송신 거리를 표현함)을 "축소"시키는 효과를 가질 것이다. 결과적으로, 클러스터링된 장치는 높은 데이터 레이트로 서로 통신할 수 있을 것이다.
한편, 캐리어가 50% 초과의 유휴 상태인 경우, 데이터 레이트는 감소된다. 이는, 통상적으로 네트워크의 변두리 상에 로케이팅되거나 그렇지 않으면, 다른 장치와 동떨어진 장치에 의해 경험되는 조건이다. 데이터 레이트를 감소시킴으로써, 장치에 대한 송신 범위는 증가할 것이고 유휴 시간의 부분은 감소할 것이다. 도 4a의 시나리오에서, 이는 변두리 상의 격리된 장치에 대응하는 원(송신 거리를 표현함)을 "성장"시키는 효과를 가질 것이다. 결과적으로, 변두리 장치는 내부 클러스터의 장치 및/또는 다른 변두리 장치와 통신할 수 있을 것이다. 전반적으로, 장치에 의해 감지된 조건에 의존하여 각각의 장치에서 데이터 송신 레이트를 선택적으로 수정함으로써, 네트워크 연결성 및 종합적인 성능이 증가된다.
위에서 설명된 프로세스는 계속적으로 동작하여서, 변하는 조건이 장치-레벨 조정을 야기할 것이란 점에 주의한다. 모바일 네트워크에서, 통신 장치의 공간적 배열은 통상적으로 시간이 지남에 따라 변한다. 예를 들어, 차량 기반 네트워크에서, 도로의 섹션에 따른 자동차는 신호등 또는 정지 신호 주변에서 압축되는 반면, 동일한 자동차는 개방된 길게 뻗은 도로를 따라 널리 퍼진다. 이러한 경우에, 각각의 차량 기반 장치는 연속적으로 유휴 레벨을 모니터링하고 이에 따라 조정을 수행하고, 그리하여 차량의 물리적 배열의 변화에 동적으로 반응한다.
위에서 설명된 기술은 다른 실시예에서 수정될 수 있다. 예를 들어, 상이한 임계치가 사용될 수 있다. 따라서, 데이터 레이트를 증가/감소시키기 위한 임계치로서 50% 유휴 상태를 사용하기보다는, 다른 임계치(예를 들어, 30%, 40% 등)가 사용될 수 있다. 또한, 데이터 레이트는 다양한 방식 또는 레이트로, 이를테면, 검출된 실제 유휴 레벨과 임계 유휴 레벨 사이의 차이에 기초하여 선형 또는 비선형 방식으로 증가될 수 있다. 이를테면, 특정된 시구간(예를 들어, 5, 10, 또는 30 초)에 걸친 평균 유휴 레벨을 측정함으로써 장치의 반응성이 또한 둔화될 수 있다.
언급된 바와 같이, 송신 범위는 또한 라디오 송신 전력을 조정함으로써 수정될 수 있다. 일부 실시예는 가능하게는, 데이터 레이트의 감소와 함께, 송신 전력을 증가시킴으로써 송신 범위를 증가시킬 수 있다.
4. 예시적인 프로세스
도 6a 내지 6m은 예시적인 실시예에 의해 수행된 컨텐츠 분배 프로세스의 예시적인 흐름도이다.
도 6a는 제 1 차량 기반 통신 장치의 예시적인 로직의 흐름도이다. 상기 및 다음의 흐름도의 예시된 로직은, 예를 들어, 컨텐츠 분배 모듈(200) 및/또는 다른 장치 또는 시스템, 이를테면, 아래의 도 7과 관련하여 설명된 컨텐츠 제공자 컴퓨팅 시스템(60)에 의해 수행될 수 있다. 이 특정 프로세스는 위의 도 3과 관련하여 설명된 바와 같이 컨텐츠의 피어 투 피어 분배를 관리한다. 보다 구체적으로, 도 6a는 다음 블록(들)을 포함하는 프로세스(6A00)를 예시한다.
블록(6A01)은 셀룰러 네트워크를 통해, 컨텐츠 분배자로부터 컨텐츠 아이템을 수신하는 것을 포함한다. 프로세스는 GSM, UMTS 또는 LTE 네트워크와 같은 셀룰러 네트워크를 통해 컨텐츠 분배자로부터 컨텐츠 아이템을 수신한다. 일부 실시예에서, 프로세스는 컨텐츠 아이템을 다른 장치에 추가로 분배하기 시작하기 전에 컨텐츠 아이템의 부분만을 수신할 필요가 있다. 컨텐츠 아이템은 코드, 데이터, 개인 미디어 등일 수 있다.
블록(6A02)은 Wi-Fi 네트워크를 통해, 컨텐츠 아이템의 제 1 부분을 제 2 차량 기반 통신 장치에 송신하는 것을 포함하며, 여기서 제 1 부분은 제 1 장치에 의해 랜덤으로 선택된다. 제 2 네트워크는 통상적으로 Wi-Fi 네트워크이다. 차량 기반 맥락에서, 제 2 네트워크는 차량 기반 동작을 위해 설계된 802.11p 네트워크 또는 이와 유사한 것일 수 있다. 컨텐츠 아이템은 고정 또는 가변 크기로 이루어질 수 있는 부분들로 분해된다. 송신된 부분은 랜덤으로 선택되는데, 그 이유는 프로세스는, 어느 부분이 인근 장치에 의해 이미 수신되었는지에 관한 어떤 지식도 반드시 가질 필요는 없기 때문이다. 송신은 통상적으로 브로드캐스트의 형태를 취하여서, 다수의 인근 장치는 단일 부분의 송신의 혜택을 받을 수 있다. 제 1 부분은 "푸시" 송신으로서 송신되는데, 즉, 제 1 부분은 다른 장치로부터의 수신된 부분에 대한 임의의 요청에 대한 응답으로 송신되지 않는다.
블록(6A03)은 Wi-Fi 네트워크를 통해 제 2 장치로부터 컨텐츠 아이템의 제 2 부분에 대한 요청을 수신하는 것을 포함한다. 이 프로세스는 또한 인근 장치에 "온 디맨드" 방식으로 부분을 제공하도록 구성된다. 이러한 방식으로, 인근 장치가 마지막 몇 개의 누락 부분을 획득함으로써 컨텐츠 아이템을 완성하려고 할 때, 인근 장치는 특정 부분에 대한 요청을 브로드캐스트할 수 있다.
블록(6A04)은 수신된 요청에 대한 응답으로, Wi-Fi 네트워크를 통해, 컨텐츠 아이템의 제 2 부분을 제 2 장치에 송신하는 것을 포함한다. 재차, 여기에서의 송신은 브로드캐스트의 형태일 수 있어서, 일부 다른 장치는 또한 요청된 부분을 수신할 수 있다.
도 6b는 도 6a의 프로세스(6A00)의 확장을 예시하는 예시적인 로직의 흐름도이다. 보다 구체적으로, 도 6b는, 프로세스(6A00)를 포함하고 다음의 블록(들)을 더 포함하는 프로세스(6B00)를 예시한다.
블록(6B01)은 컨텐츠 분배자로부터, 컨텐츠 아이템을 식별하는 알림을 수신하는 것을 포함하며, 알림은 셀룰러 네트워크를 통해 수신된다. 이러한 동작은 통상적으로 위에서 설명된 바와 같이 컨텐츠 아이템 그 자체의 송신에 선행한다. 알림은 분배를 위한 컨텐츠 아이템 및 가능하게는, 컨텐츠 아이템과 관련된 소스 또는 다른 메타데이터를 식별하는 메시지이다. 알림 그 자체는 암호화방식으로 서명될 수 있어서, 그의 소스는 인증될 수 있다.
블록(6B02)은 알림에 대한 응답으로, 셀룰러 네트워크를 통해, 식별된 아이템에 대해 컨텐츠 분배자에 요청을 송신하는 것을 포함한다. 알림을 수신하면, 프로세스는 그것이 일부 다른 차량 기반 장치와 같은 다른 소스로부터 식별된 컨텐츠 아이템을 아직 수신하지 않은 경우, 식별된 컨텐츠 아이템에 대한 요청으로 컨텐츠 분배자에 응답한다.
블록(6B03)은 컨텐츠 분배자로부터, 컨텐츠 아이템을 인증하도록 구성된 프루프를 수신하는 것을 포함하며, 프루프는 셀룰러 네트워크를 통해 수신된다. 프로세스는 컨텐츠(예를 들어, 컨텐츠가 손상되지 않음) 및/또는 컨텐츠의 소스(예를 들어, 컨텐츠 제공자, 또는 컨텐츠의 저자 또는 제공자인 일부 다른 당사자의 아이덴티티)를 검증하는 데 사용될 수 있는 데이터를 포함하는 프루프의 세트를 수신한다. 위에서 논의된 바와 같이, Merkle 프루프는 이 기능성 중 적어도 일부를 제공하기 위해 사용될 수 있다.
블록(6B04)은 셀룰러 네트워크를 통해, 컨텐츠 분배자로부터 컨텐츠 아이템을 수신하는 것을 포함한다. 통상적으로, 컨텐츠 아이템의 소스를 인증하기 위해 프루프를 사용한 후에, 프로세스는 제 1 네트워크를 통해 컨텐츠 아이템을 수신한다. 컨텐츠 아이템은 부분들로 분해될 수 있어서, 컨텐츠 아이템을 수신하는 것은 컨텐츠 아이템의 다수의 별개의 부분을 수신하는 것을 포함하게 된다.
도 6c는 도 6b의 프로세스(6B00)의 확장을 예시하는 예시적인 로직의 흐름도이다. 보다 구체적으로, 도 6c는, 프로세스(6B00)를 포함하고 다음의 블록(들)을 더 포함하는 프로세스(6C00)를 예시한다.
블록(6C01)은 컨텐츠 분배자로부터 수신된 프루프에 기초하여 컨텐츠 아이템의 소스 및 컨텐츠를 인증하는 것을 포함한다. 소스 및 컨텐츠를 인증하는 것은 디지털 서명 및/또는 메시지 다이제스트(digest)를 검증하는 것과 같은 동작을 포함할 수 있다. 컨텐츠 아이템의 무결성은 점진적으로(예를 들어, 부분이 수신됨에 따라) 또는 전체 컨텐츠 아이템이 수신되면 검사될 수 있다.
도 6d는 도 6b의 프로세스(6B00)의 확장을 예시하는 예시적인 로직의 흐름도이다. 보다 구체적으로, 도 6d는, 프로세스(6B00)를 포함하고 다음의 블록(들)을 더 포함하는 프로세스(6D00)를 예시한다.
블록(6D01)은 제 2 장치로부터, 알림에 대한 요청을 수신하는 것을 포함하며, 이 요청은 컨텐츠 아이템의 제 1 부분의 수신에 대한 응답으로, 제 2 장치에 의해 Wi-Fi 네트워크를 통해 송신된다. 프로세스가 랜덤으로 제 2 장치에 부분을 브로드캐스트할 때, 제 2 장치는 분배되는 컨텐츠 아이템에 대한 어떤 지식도 갖지 않을 수 있다. 그러한 경우, 제 2 장치는, 제 2 장치가 컨텐츠 아이템의 아이덴티티, 소스, 성질 및/또는 목적을 결정할 수 있도록 알림에 대한 요청으로 응답할 것이다.
블록(6D02)은 Wi-Fi 네트워크를 통해, 제 2 장치에 알림을 송신하는 것을 포함한다. 알림에는 프루프가 또한 동반될 수 있다. 대안적으로, 프루프는 그 특정 요청에 대한 응답으로 송신될 수 있다.
도 6e는 도 6a의 프로세스(6A00)의 확장을 예시하는 예시적인 로직의 흐름도이다. 보다 구체적으로, 도 6e는, 프로세스(6A00)를 포함하고 다음의 블록(들)을 더 포함하는 프로세스(6E00)를 예시한다.
블록(6E01)은 Wi-Fi 네트워크를 통해, 제 2 장치에 컨텐츠 아이템의 랜덤으로 선택된 부분을 송신하는 것을 포함한다. 이 프로세스는 컨텐츠 아이템 분배 동안 2개의 주요 동작을 동시에 수행한다. 이 동작에서, 프로세스는 일부 정지 조건이 도달될 때까지 랜덤으로 선택된 부분을 반복적으로 송신한다.
블록(6E02)은 Wi-Fi 네트워크를 통해 특정된 부분을 제 2 장치에 송신함으로써 컨텐츠 아이템의 특정된 부분에 대해 제 2 장치로부터 수신된 요청에 응답하는 것을 포함한다. 통상적으로 상기와 동시에 수행되는 이 동작에서, 프로세스는 누락 부분을 찾는 장치로부터 수신된 요청과 같이 특정 컨텐츠 부분에 대한 임의의 요청에 응답하며, 이는 전체 컨텐츠 아이템을 완료하는 역할을 한다. 일부 실시예에서, 특정 컨텐츠 아이템을 구성하는 부분의 일부 임계치(예를 들어, 90%)를 초과하여 수신한 장치는 이들 누락 부분에 대한 요청을 브로드캐스트하기 시작할 것이다. 응답 장치는 응답하기 전에 랜덤 시간 간격을 기다리고 그 후 어떤 다른 장치도 요청된 부분을 송신하기 시작하지 않은 경우에 응답하는 것과 같이 다수의 장치가 요청에 응답하는 것을 방지하는 방식을 사용할 수 있다. 대안적으로 또는 부가적으로, 누락 부분을 찾는 장치는 누락 부분을 획득하기 위해(예를 들어, 셀룰러 네트워크를 통해) 컨텐츠 분배자와 통신할 수 있다.
도 6f는 도 6a의 프로세스(6A00)의 확장을 예시하는 예시적인 로직의 흐름도이다. 보다 구체적으로, 도 6f는, 프로세스(6A00)를 포함하고 다음의 블록(들)을 더 포함하는 프로세스(6F00)를 예시한다.
블록(6F01)은 Wi-Fi 네트워크를 통해, 컨텐츠 아이템의 랜덤하게 선택된 부분을 반복적으로 송신하는 것을 포함하며, 여기서 송신은 Wi-Fi 네트워크의 부분인 다수의 다른 차량 기반 통신 장치에 도달하는 브로드캐스트 송신이다. 위에서 논의된 바와 같이, Wi-Fi 또는 다른 네트워크를 통한 컨텐츠 아이템의 송신은 통상적으로 브로드캐스트와 비슷해서, 송신 범위에 있는 다수의 다른 장치가 단일 송신으로부터 혜택을 받을 수 있다.
도 6g는 차량 기반 무선 네트워크에서 컨텐츠를 분배하기 위한 예시적인 로직의 흐름도이다. 이 프로세스는 차량 기반 네트워크 내의 장치들에 컨텐츠 아이템을 분배하려고 하는 컨텐츠 분배자에 의해 수행된다. 보다 구체적으로, 도 6g는 다음 블록(들)을 포함하는 프로세스(6G00)를 예시한다.
블록(6G01)은 셀룰러 네트워크를 통해, 알림, 프루프 및 컨텐츠 아이템을 차량 기반 무선 네트워크 내의 장치들의 제 1 서브세트에 송신하는 것을 포함하며, 이 알림은 컨텐츠 분배자에 의해 송신되고 컨텐츠 아이템을 식별하며, 이 증명은 컨텐츠 분배자 및 컨텐츠 아이템을 인증하도록 구성된다. 컨텐츠 분배자는 먼저, 알림, 프루프 및 컨텐츠 아이템의 적어도 일부를 네트워크 내의 장치들 중 일부에 송신한다. 이 데이터는 통상적으로 3G/4G 네트워크와 같은 셀룰러 네트워크인 셀룰러 네트워크를 통해 송신된다.
블록(6G02)은 장치들의 제 1 서브세트의 장치로 하여금, Wi-Fi 네트워크를 통해, 차량 기반 무선 네트워크 내의 장치들의 제 2 서브세트의 장치에 컨텐츠 아이템의 부분을 송신하게 하는 것을 포함한다. 네트워크 내의 장치가 알림, 대응하는 프루프 및 컨텐츠 아이템의 적어도 일부를 수신하면, 장치는 Wi-Fi 네트워크를 통해 컨텐츠 아이템의 부분을 공유하기 시작할 것이다. 제 2 서브세트의 장치는 분배자로부터 알림, 프루프 또는 컨텐츠 아이템을 수신하지 않은 장치이다. 이 시점에서, 컨텐츠 분배자는 컨텐츠 아이템(또는 그의 적어도 일부)이 네트워크를 통해 공유될 수 있게 하기 위해 대기한다.
블록(6G03)은 셀룰러 네트워크를 통해, 잔여 부분을 장치들의 제 2 서브세트의 장치에 송신하는 것을 포함하며, 각각의 잔여 부분은 장치들의 제 1 서브세트의 임의의 장치로부터 장치들의 제 2 서브세트의 장치에 의해 수신되지 않은 부분이다. 일정 시간 후에, 컨텐츠 분배자는 컨텐츠 분배자로부터 초기 알림 또는 컨텐츠 아이템을 전혀 수신하지 못한, 제 2 서브세트의 장치를 끌어들인다(engage). 따라서, 컨텐츠 분배자는 임의의 누락 부분을 제 2 서브세트의 장치에 송신함으로써 컨텐츠 아이템이 완전히 분배되었음을 보장할 수 있다.
도 6h는 도 6g의 프로세스(6G00)의 확장을 예시하는 예시적인 로직의 흐름도이다. 보다 구체적으로, 도 6h는, 프로세스(6G00)를 포함하고 다음의 블록(들)을 더 포함하는 프로세스(6H00)를 예시한다.
블록(6H01)은 차량 기반 네트워크 전반에 걸친 컨텐츠 아이템의 분배를 추적하는 것을 포함한다. 컨텐츠 아이템의 분배를 추적하는 것은 컨텐츠 아이템이 각각의 장치에 의해 얼마만큼 수신되었는지를 결정하기 위해 랜덤으로 선택된 장치의 서브세트를 샘플링하는 것을 포함할 수 있다. 분배를 추적함으로써, 컨텐츠 분배자는 컨텐츠 아이템이 네트워크에 걸쳐 얼마나 많이 그리고 얼마나 빨리 공유되는지를 결정할 수 있다.
블록(6H02)은 컨텐츠 아이템의 분배가 임계 레벨에 도달하는 것에 대한 응답으로, 잔여 부분을 제 2 서브세트의 장치에 송신하는 것을 포함한다. 예를 들어, 컨텐츠 아이템이 70% 분배되면(예를 들어, 각각의 장치는 관련 부분의 평균 70%를 수신함) 분배자는 네트워크의 모든 장치가 전체 컨텐츠 아이템을 수신하는 것을 보장하기 위해 제 2 서브세트의 장치와 상호작용한다.
도 6i는 도 6g의 프로세스(6G00)의 확장을 예시하는 예시적인 로직의 흐름도이다. 보다 구체적으로, 도 6i는, 프로세스(6I00)를 포함하고 다음의 블록(들)을 더 포함하는 프로세스(6100)를 예시한다.
블록(6I01)은 길가(roadside) 통신 장치에 의해 그리고 Wi-Fi 네트워크를 통해, 제 1 차량 기반 통신 장치로부터 컨텐츠 부분을 수신하는 것을 포함하며, 이 길가 통신 장치는 제 1 장치를 반송한 차량에 의해 이동된 도로 주위의 고정 포지션에 로케이팅된다. 일부 실시예는 컨텐츠 부분을 하나의 차량으로부터 다른 차량으로 포워딩하도록 구성된 고정 포지션 길가 장치를 포함한다. 일부 길가 장치는 또한, 네트워크 내의 차량 기반 장치에 포워딩될 컨텐츠를 수신하기 위해 그것이 셀룰러 네트워크(또는 유선 네트워크)를 통해 컨텐츠 분배자와 통신할 수 있도록 다수의 통신 인터페이스를 가질 수 있다.
블록(6I02)은 길가 통신 장치에 의해 그리고 Wi-Fi 네트워크를 통해, 컨텐츠 부분을 제 2 차량 기반 통신 장치에 송신하는 것을 포함한다. 이 예에서, 길가 장치는, 지나가는 차량에 의해 브로드캐스트되는 컨텐츠 부분을 수신하고 그 후 이를 다른 차량에 포워딩한다는 점에서 차량 기반 장치와 유사한 방식으로 동작한다. 언급된 바와 같이, 길가 장치는 또한, 가능하게는, 유선, 셀룰러 등과 같은 일부 다른 통신 인터페이스를 통해 컨텐츠 분배자로부터 컨텐츠를 직접 수신할 수 있다.
도 6j는 차량 기반 무선 네트워크에서 컨텐츠 아이템의 분배된 저장을 위한 제 1 차량 기반 통신 장치의 예시적인 로직의 흐름도이다. 이 프로세스는 위의 도 4a 내지 도 4d 및 도 5와 관련하여 논의된 바와 같이, 네트워크 연결성 및 전반적인 성능을 개선하기 위해 네트워크 내의 장치의 데이터 송신 레이트를 자동으로 조정한다. 보다 구체적으로, 도 6j는 다음 블록(들)을 포함하는 프로세스(6J00)를 예시한다.
블록(6J01)은 네트워크 내의 다른 차량 기반 통신 장치와 통신하는 데 사용되는 무선 채널에 대한 활용 레벨을 결정하는 것을 포함한다. 채널은 다른 장치와 통신하기 위해 장치에 의해 사용되는 주파수 또는 주파수 대역이다. 채널을 리스닝(listening)함으로써, 프로세스는 채널이 혼잡 상태이거나 유휴 상태에 있는 시간의 부분을 결정할 수 있다. 이 예에서, 활용(utilization)은 유휴 상태와 동일시되지만, 아래에서 설명되는 대응하는 논리 반전으로, 혼잡 상태(business)를 대신 사용하는 것이 가능하다.
블록(6J02)은 활용 레벨이 임계 레벨 미만일 때, 제 1 장치의 제 1 무선 트랜시버의 송신 데이터 레이트를 증가시키는 것을 포함한다. 활용이 유휴 시간으로서 측정될 때, 프로세스는, 채널이 임계 퍼센트 유휴 상태 미만(예를 들어, 50% 미만의 유휴 상태)이면, 데이터 레이트를 증가시킬 것이다. 언급된 바와 같이, 데이터 송신 레이트와 범위 사이의 역의 관계를 감안하면, 이는 송신 범위를 단축시키는 효과를 가질 것이다.
블록(6J03)은 활용 레벨이 임계 레벨을 초과할 때, 제 1 무선 트랜시버의 송신 데이터 레이트를 감소시키는 것을 포함한다. 예를 들어, 채널이 50% 초과의 유휴 상태일 때, 프로세스는 범위를 증가시키도록 송신 데이터 레이트를 감소시킬 것이다.
블록(6J04)은 네트워크 내의 다른 차량 기반 통신 장치에 데이터를 송신하는 것을 포함한다. 설정된 데이터 레이트가 송신을 위해 사용된다. 위의 동작은 통상적으로, 네트워크 토폴로지 및 활용의 변화에 동적으로 적응하도록 반복적으로 수행된다.
도 6k는 도 6j의 프로세스(6J00)의 확장을 예시하는 예시적인 로직의 흐름도이다. 보다 구체적으로, 도 6k는, 프로세스(6J00)를 포함하는 프로세스(6K00)를 예시하며, 무선 채널에 대한 활용 레벨을 결정하는 것은 다음 블록(들)을 포함한다.
블록(6K01)은 특정 시간 간격에 걸쳐 측정된, 무선 채널이 유휴 상태인 시간의 퍼센티지를 결정하는 것을 포함한다. 활용은 채널을 리스닝하고 시간 간격(예를 들어, 1, 5, 10 초) 동안 채널이 조용한(quiet) 시간의 퍼센티지가 어떻게 되는지를 측정함으로써 결정될 수 있다.
도 6l는 도 6j의 프로세스(6J00)의 확장을 예시하는 예시적인 로직의 흐름도이다. 보다 구체적으로, 도 6l는, 프로세스(6J00)를 포함하고 다음의 블록(들)을 더 포함하는 프로세스(6L00)를 예시한다.
블록(6L01)은 제 1 장치의 제 2 무선 트랜시버를 통해, 컨텐츠 분배자로부터 컨텐츠 아이템을 수신하는 것을 포함한다. 위에서 논의된 바와 같이, 통상적인 장치는 2개의 통신 인터페이스(하나는 (예를 들어, 컨텐츠 분배자와의) 셀룰러 통신을 위한 것이고 다른 하나는 다른 장치/차량과의 로컬 통신을 위한 것임)를 갖는다. 여기서, 장치는 셀룰러 인터페이스를 통해, 위의 도 3과 관련하여 설명된 바와 같이 컨텐츠를 수신한다.
블록(6L02)은 송신 데이터 레이트를 사용하여 제 1 무선 트랜시버를 통해, 컨텐츠 아이템의 부분을 네트워크 내의 다른 차량 기반 통신 장치에 송신하는 것을 포함한다. 그 후, 장치는 Wi-Fi 인터페이스를 통해 컨텐츠 아이템의 부분을 네트워크 내의 다른 장치에 포워딩하기 위해 설정된 데이터 레이트를 사용한다.
도 6m은 도 6J의 프로세스(6J00)의 확장을 예시하는 예시적인 로직의 흐름도이다. 보다 구체적으로, 도 6m은, 프로세스(6J00)를 포함하고 다음의 블록(들)을 더 포함하는 프로세스(6M00)를 예시한다.
블록(6M01)은, 제 1 장치가 네트워크 내의 다른 장치에 아주 근접할 때, 제 1 장치가 다른 장치와 아주 근접하지 않은, 네트워크 내의 다른 장치에 비해 더 짧은 거리에 걸쳐 더 높은 레이트로 송신하도록 송신 데이터 레이트를 자동으로 조정하는 것을 포함한다. 근접도는 다양한 방식으로 측정되고 표현될 수 있다. 예를 들어, 근접도는 (가능하게는, 일부 최대 범위 내의) 다른 차량까지의 평균 거리일 수 있다. 다른 차량에 아주 근접한 차량은 클러스터인 경향이 있는데, 이는 그의 채널이 혼잡 상태(유휴 상태가 아님)인 경향이 있을 것임을 의미하며, 이는 결국, 설명된 기술의 동작에 의해 데이터 레이트가 더 높아지게(그리고 송신 범위가 짧아지게) 될 것이다. 유사하게, 낮은 근접도(다른 장치까지의 먼 평균 거리)의 차량은 그의 채널 상에서 더 높은 유휴 레벨을 경험하는 경향이 있으며, 이는 결국, 데이터 레이트가 더 낮아지게 될 것이다(그리고 송신 범위가 길어짐). 결국, 설명된 프로세스는 클러스터링된 노드가 빠르게 송신하게 하는 반면, 에지 또는 변두리 노드는 멀리 송신하게 할 것이다.
5. 예시적인 컴퓨팅 시스템 구현
도 7은 예시적인 실시예에 따라 컨텐츠 분배를 구현하고 수행하기 위한 예시적인 컴퓨팅 시스템 또는 장치의 블록도이다. 특히, 도 7은 본원에서 설명된 기술 중 적어도 일부를 구현하는 컨텐츠 분배 모듈(200)을 실행하는 컴퓨팅 시스템 또는 장치(100)를 도시한다. 장치(100)는 차량 기반 네트워크의 경우에, 자동차 또는 다른 차량에 설치될 수 있다. 다른 맥락에서, 장치(100)는 태블릿 또는 스마트폰과 같은 모바일 장치일 수 있다.
하나 이상의 범용 또는 특수 목적 컴퓨팅 시스템/장치가 모듈(200)을 구현 및/또는 실행하는 데 사용될 수 있다는 것에 주의한다. 그러나 범용 컴퓨팅 시스템 상에 관리자를 구현하는 것이 가능하다고 해서 기술을 구현하는 데 필요한 기술 그 자체 또는 동작(단독으로 또는 조합으로 행해짐)이 종래의 것이거나 잘 알려진 것임을 의미하는 것은 아니다. 또한, 컴퓨팅 시스템(100)은 하나 이상의 별개의 컴퓨팅 시스템/장치를 포함할 수 있고 분배된 위치에 걸쳐 있을 수 있다. 또한, 도시된 각각의 블록은 특정 실시예에 적절한 하나 이상의 그러한 블록을 나타낼 수 있거나 다른 블록과 결합될 수 있다. 또한, 모듈(200)은 본원에서 설명된 능력을 달성하기 위해 소프트웨어, 하드웨어, 펌웨어 또는 일부 조합으로 구현될 수 있다.
도시된 실시예에서, 컴퓨팅 시스템(100)은 컴퓨터 메모리("메모리")(11), 디스플레이(12), 하나 이상의 중앙 처리 장치("CPU")(13), 입력/출력 장치(14)(예를 들어, 키보드, 마우스, CRT 또는 LCD 디스플레이 등), 다른 컴퓨터 판독 가능 매체(15), 및 네트워크 연결(16a 및 16b)을 포함한다. 모듈(200)은 메모리(11)에 상주하는 것으로 도시된다. 다른 실시예에서, 컨텐츠 중 일부 부분, 모듈(200)의 컴포넌트 중 일부 또는 전부는 다른 컴퓨터 판독 가능 매체(15) 상에 저장되고 그리고/또는 다른 컴퓨터 판독 가능 매체(15)를 통해 송신될 수 있다. 모듈(200)은 바람직하게는, 하나 이상의 CPU(13) 상에서 실행되고 본원에서 설명된 기술을 수행한다. 다른 코드 또는 프로그램(30)(예를 들어, 관리 인터페이스, 웹 서버 등) 및 잠재적으로, 데이터 저장소(repository)(20)와 같은 다른 데이터 저장소가 또한 메모리(11)에 상주하고, 바람직하게는 하나 이상의 CPU(13) 상에서 실행된다. 특히, 도 7의 컴포넌트 중 하나 이상은 임의의 특정 구현에 존재하지 않을 수 있다. 예를 들어, 일부 실시예는 다른 컴퓨터 판독 가능 매체(15) 또는 디스플레이(12)를 제공하지 않을 수 있다.
모듈(200)은 네트워크 연결(16a)을 사용하여, Wi-Fi 네트워크(99a)를 통해 다른 장치(100' 및 100")와 상호작용한다. 또한, 모듈(200)은 캐리어 네트워크(99b)를 통해 네트워크 연결(16b)을 이용하여, 컨텐츠 제공자 컴퓨팅 시스템(60)과 상호작용한다. 다른 장치(100', 100")가 장치(100)와 유사하게 구성된다. 장치(100' 및 100") 중 하나 이상은 도로의 한 측과 같은 고정 포지션에 로케이팅될 수 있다(예를 들어, 전신주 또는 교통 신호 상에 장착됨).
모듈(200)은 장치(100)의 메모리(11)에서 실행되는 것으로 도시된다. 또한, 메모리(11)에는 사용자 인터페이스 관리자(41) 및 애플리케이션 프로그램 인터페이스("API")(42)가 포함된다. 사용자 인터페이스 관리자(41) 및 API(42)는 다른 실시예에서, 이들 컴포넌트 중 하나 이상에 의해 수행되는 기능이 모듈(200) 외부에서 수행될 수 있음을 표시하기 위해 점선으로 그려진다.
UI 관리자(41)는 모듈(200) 및 그의 다양한 컴포넌트와의 사용자 상호작용을 용이하게 하는 뷰(view) 및 제어기를 제공한다. 예를 들어, UI 관리자(41)는 사용자 또는 관리자가 이를테면, 구성 설정, 뷰잉 로그 등을 수정함으로써 모듈(200)과 상호작용할 수 있도록 모듈(200)에 대한 상호작용식 액세스를 제공할 수 있다. 일부 실시예에서, UI 관리자(41)의 기능성에 대한 액세스는 웹 서버를 통해 제공될 수 있으며, 가능하게는, 다른 프로그램(30) 중 하나로서 실행된다. 이러한 실시예에서, 네트워크 관리 시스템(55)을 실행하는 웹 브라우저를 동작시키는 사용자는 UI 관리자(41)를 통해 모듈(200)과 상호작용할 수 있다.
API(42)는 모듈(200)의 하나 이상의 기능에 대한 프로그래밍식 액세스(programmatic access)를 제공한다. 예를 들어, API(42)는 다른 프로그램(30) 중 하나에 의해 호출될 수 있는 모듈(200) 또는 일부 다른 모듈의 하나 이상의 기능에 대한 프로그래밍식 인터페이스를 제공할 수 있다. 이러한 방식으로, API(42)는 사용자 인터페이스, 플러그-인, (예를 들어, 모듈(200)의 기능을 웹 애플리케이션으로 통합하기 위한) 어댑터 등과 같은 제 3 자 소프트웨어의 개발을 용이하게 한다.
또한, API(42)는 적어도 일부 실시예에서, 모듈(200)의 다양한 기능에 액세스하기 위해 컨텐츠 제공자 컴퓨팅 시스템(60) 및/또는 네트워크 장치(100' 및 100") 중 하나 상에서 실행되는 코드와 같이 원격 엔티티를 통해 호출되거나, 다른 방식으로 액세스될 수 있다. 예를 들어, 시스템(60)은 API(42)를 통해 알림, 프루프, 컨텐츠 부분 또는 다른 데이터 아이템을 송신할 수 있다. 시스템(60)은 또한 얼마나 많은 컨텐츠 부분이 수신되었는지, 로그 메시지 등을 포함하는 상태 정보에 대해 모듈(200)에 질의할 수 있다.
예시적인 실시예에서, 모듈(200)의 컴포넌트/모듈은 소프트웨어 프로그래밍 기술을 사용하여 구현된다. 예를 들어, 모듈(200)은 하나 이상의 정적 또는 동적 라이브러리와 함께 CPU(13) 상에서 구동되는 "네이티브(native)" 실행 가능한 것(executable)으로서 구현될 수 있다. 다른 실시예에서, 모듈(200)은 다른 프로그램(30) 중 하나로서 실행되는 가상 머신에 의해 프로세싱되는 명령어로서 구현될 수 있다. 일반적으로, 객체 지향적(예를 들어, Java, C ++, C #, Visual Basic.NET, Smalltalk 등), 기능적(예를 들어, ML, Lisp, Scheme 등), 절차적(예를 들어, C, Pascal, Ada, Modula 등), 스크립팅(예를 들어, Perl, Ruby, Python, JavaScript 등), 선언적(예를 들어, SQL, Prolog 등) 프로그래밍 언어를 포함(그러나 이에 제한되지 않음)하는 다양한 프로그래밍 언어 패러다임의 대표적인 구현을 포함해서, 다양한 프로그래밍 언어가 그러한 예시적인 실시예를 구현하기 위해 사용될 수 있다.
다양한 컴포넌트는 예를 들어, 단일 CPU 컴퓨터 시스템 상에서 구동되는 실행 가능한 것과 같은 보다 모놀리식(monolithic) 프로그래밍 기술을 사용하여 구현되거나, 또는 대안적으로, 각각이 하나 이상의 CPU를 갖는 하나 이상의 컴퓨터 시스템 상에서 구동되는 다양한 구조화 기술(structuring technique)(멀티프로그래밍, 멀티스레딩(multithreading), 클라이언트-서버 또는 피어-투-피어를 포함함(그러나 이에 제한되지 않음))을 사용하여 분해될 수 있다. 일부 실시예는 동시에 그리고 비동기식으로 실행되고, 메시지 전달, 원격 프로시저 호출 또는 다른 분배된 컴퓨팅 패러다임을 사용하여 통신할 수 있다. 등가의 동기식 실시예가 또한 지원된다. 또한, 다른 기능이 각각의 컴포넌트/모듈에 의해, 그리고 설명된 기능을 여전히 달성하면서, 상이한 순서로 그리고 상이한 컴포넌트/모듈에 의해 구현 및/또는 수행될 수 있다.
또한, 데이터 저장소(20)와 같은 모듈(200)의 부분으로서 저장된 데이터에 대한 프로그래밍 인터페이스는 언어-특정 API에 의해; 파일, 데이터베이스 또는 다른 데이터 저장소에 액세스하기 위한 라이브러리에 의해; XML과 같은 표현 언어를 통해; 또는 웹 서버, FTP 서버 또는 저장된 데이터에 대한 액세스를 제공하는 다른 유형의 서버를 통해 이용 가능할 수 있다. 데이터 저장소(20)는 분배된 컴퓨팅 기술을 사용한 구현을 포함해서, 하나 이상의 데이터베이스 시스템, 파일 시스템, 또는 이러한 정보를 저장하기 위한 임의의 다른 기술, 또는 이들의 임의의 조합으로서 구현될 수 있다.
프로그램 및 데이터의 상이한 구성 및 위치가 본원에서 설명된 기술과 함께 사용되도록 고려된다. TCP/IP 소켓, RPC, RMI, HTTP, 웹 서비스(XML-RPC, JAX-RPC, SOAP 등)를 포함(그러나 이에 제한되지 않음)하는 분배된 방식으로 예시된 실시예의 컴포넌트를 구현하기 위해 다양한 분배된 컴퓨팅 기술이 적절하다. 다른 변동이 가능하다. 또한, 다른 기능성이 각각의 컴포넌트/모듈에 의해 제공될 수 있거나, 또는 본원에서 설명된 기능을 여전히 달성하면서, 기존 기능성이 상이한 방식으로 컴포넌트/모듈 간에 분배될 수 있다.
또한, 일부 실시예에서, 모듈(200)의 컴포넌트의 일부 또는 전부는, 하나 이상의 주문형 집적 회로("ASIC"), 표준 집적 회로, 적절한 명령어를 실행하는 제어기를 포함(그러나 이에 제한되지 않음)하고, 마이크로제어기 및/또는 임베디드 제어기, 필드 프로그래밍가능 게이트 어레이("FPGA"), 복합 프로그래밍 가능 로직 장치("CPLD") 등을 포함해서, 다양한 방식으로, 이를테면, 적어도 부분적으로 펌웨어로 및/또는 하드웨어로 구현되거나 제공될 수 있다. 시스템 컴포넌트 및/또는 데이터 구조의 일부 또는 전부는 또한, 설명된 기술 중 적어도 일부를 수행하도록 컨텐츠를 제공하거나, 이를 실행하거나 또는 다른 방식으로 사용하도록 컴퓨터 판독 가능 매체 및/또는 하나 이상의 연관된 컴퓨팅 시스템 또는 장치를 구성 또는 인에이블하도록, 컴퓨터 판독 가능 매체(예를 들어, 하드 디스크, 메모리, 컴퓨터 네트워크 또는 셀룰러 무선 네트워크 또는 다른 데이터 송신 매체, 또는 적절한 드라이브에 의해 또는 적절한 연결을 통해 판독되는 휴대용 미디어 물품, 이를테면, DVD 또는 플래시 메모리 장치) 상에 컨텐츠(예를 들어, 실행 가능한 또는 다른 머신-판독 가능 소프트웨어 명령어 또는 구조화된 데이터)로서 저장될 수 있다. 컴포넌트 및/또는 데이터 구조의 일부 또는 전부는 유형의 비-일시적 저장 매체 상에 저장될 수 있다. 시스템 컴포넌트 및 데이터 구조의 일부 또는 전부는 또한 (예를 들어, 반송파의 부분으로서 인코딩되거나 아날로그 또는 디지털 전파 신호의 부분으로서 포함되게 함으로써) 무선-기반 및 유선/케이블 기반 매체를 포함하는 다양한 컴퓨터 판독 가능 송신 매체 상에 데이터 신호(이는 추후에 송신됨)로서 저장될 수 있고, (예를 들어, 단일 또는 멀티플렉싱된 아날로그 신호의 부분으로서, 또는 다수의 이산 디지털 패킷 또는 프레임으로서) 다양한 형태를 취할 수 있다. 이러한 컴퓨터 프로그램 제품은 또한 다른 실시예에서 다른 형태를 취할 수 있다. 따라서, 본 개시내용의 실시예는 다른 컴퓨터 시스템 구성으로 실시될 수 있다.
일 실시예는 차량 기반 무선 네트워크에서 컨텐츠를 분배하기 위한 시스템을 제공하며, 시스템은 제 1 무선 트랜시버를 갖는 제 1 차량 기반 통신 장치를 포함하고, 제 1 장치는, 네트워크 내의 다른 차량 기반 통신 장치와 통신하는 데 사용되는 무선 채널에 대한 활용 레벨을 결정하고, 활용 레벨이 임계 레벨 미만일 때, 제 1 무선 트랜시버의 송신 데이터 레이트를 증가시키고, 활용 레벨이 임계 레벨을 초과할 때, 제 1 무선 트랜시버의 송신 데이터 레이트를 감소시키고, 네트워크 내의 다른 차량 기반 통신 장치에 데이터를 송신하도록 구성된다.
일부 시스템 실시예에서, 활용 레벨은 무선 채널 상의 유휴 시간의 측정치이거나, 또는 활용 레벨은 특정 시간 간격에 걸쳐 측정된, 무선 채널이 유휴 상태인 시간의 퍼센티지이다.
일부 시스템 실시예에서, 임계 레벨은 50%이다. 일부 시스템 실시예에서, 제 1 장치는 추가로, 무선 채널이 시간의 50% 미만으로 유휴 상태임을 제 1 장치가 검출할 때, 무선 트랜시버의 유효 송신 범위를 감소시키도록 송신 데이터 레이트를 증가시키도록 구성된다. 일부 시스템 실시예에서, 제 1 장치는 추가로, 무선 채널이 시간의 50% 초과로 유휴 상태임을 제 1 장치가 검출할 때, 무선 트랜시버의 유효 송신 범위를 증가시키도록 송신 데이터 레이트를 감소시키도록 구성된다. 일부 시스템 실시예에서, 제 1 장치는 추가로, 활용 레벨을 결정하기 위해 채널의 활용을 샘플링하도록 구성된다.
일부 시스템 실시예에서, 제 1 장치는 제 2 무선 트랜시버를 더 포함하고, 제 1 장치 추가로, 제 2 무선 트랜시버를 통해, 컨텐츠 분배자로부터 컨텐츠 아이템을 수신하고, 송신 데이터 레이트를 사용하여 제 1 무선 트랜시버를 통해, 컨텐츠 아이템의 부분을 네트워크 내의 다른 차량 기반 통신 장치에 송신하도록 구성된다.
일부 시스템 실시예에서, 차량 기반 무선 네트워크는, 다른 장치에 아주 근접한 장치는 다른 장치에 아주 근접하지 않은 장치에 비해 더 짧은 거리에 걸쳐 더 높은 레이트로 데이터를 송신하도록, 송신 데이터 레이트를 자동으로 조정하도록 각각 구성되는 다수의 차량 기반 장치를 포함한다.
일부 실시예는 차량 기반 무선 네트워크에서 컨텐츠 아이템의 분배된 저장을 위한, 제 1 차량 기반 통신 장치의 프로세스를 제공하며, 프로세스는, 네트워크 내의 다른 차량 기반 통신 장치와 통신하는 데 사용되는 무선 채널에 대한 활용 레벨을 결정하는 단계와, 활용 레벨이 임계 레벨 미만일 때, 제 1 장치의 제 1 무선 트랜시버의 송신 데이터 레이트를 증가시키는 단계와, 활용 레벨이 임계 레벨을 초과할 때, 제 1 무선 트랜시버의 송신 데이터 레이트를 감소시키는 단계와, 네트워크 내의 다른 차량 기반 통신 장치에 데이터를 송신하는 단계를 포함한다.
일부 프로세스 실시예에서, 무선 채널에 대한 활용 레벨을 결정하는 단계는 무선 채널 상에서 유휴 시간을 측정하는 단계를 포함한다. 일부 프로세스 실시예에서, 무선 채널에 대한 활용 레벨을 결정하는 단계는 특정 시간 간격에 걸쳐 측정된, 무선 채널이 유휴 상태인 시간의 퍼센티지를 결정하는 단계를 포함한다. 일부 프로세스 실시예에서, 프로세스는 활용 레벨을 결정하기 위해 채널의 활용을 샘플링하는 단계를 더 포함한다.
일부 프로세스 실시예에서, 프로세스는, 무선 채널이 시간의 50% 미만으로 유휴 상태임을 제 1 장치가 검출할 때, 무선 트랜시버의 유효 송신 범위를 감소시키도록 송신 데이터 레이트를 증가시키는 단계를 더 포함한다. 일부 프로세스 실시예에서, 프로세스는, 무선 채널이 시간의 50% 초과로 유휴 상태임을 제 1 장치가 검출할 때, 무선 트랜시버의 유효 송신 범위를 증가시키도록 송신 데이터 레이트를 감소시키는 단계를 더 포함한다.
일부 프로세스 실시예에서, 프로세스는, 제 1 장치의 제 2 무선 트랜시버를 통해, 컨텐츠 분배자로부터 컨텐츠 아이템을 수신하는 단계와, 송신 데이터 레이트를 사용하여 제 1 무선 트랜시버를 통해, 컨텐츠 아이템의 부분을 네트워크 내의 다른 차량 기반 통신 장치에 송신하는 단계를 더 포함한다.
일부 프로세스 실시예에서, 프로세스는, 제 1 장치가 네트워크 내의 다른 장치에 아주 근접할 때, 제 1 장치가 다른 장치와 아주 근접하지 않은, 네트워크 내의 다른 장치에 비해 더 짧은 거리에 걸쳐 더 높은 레이트로 송신하도록 송신 데이터 레이트를 자동으로 조정하는 단계를 더 포함한다.
일부 프로세스 실시예에서, 프로세스는, 제 1 장치의 제 2 무선 트랜시버를 통해, 컨텐츠 분배자로부터 컨텐츠 아이템을 수신하는 단계와, 컨텐츠 분배자로부터 수신된 프루프에 기초하여 컨텐츠 아이템의 소스 및 무결성(integrity)을 검증하는 단계와, 송신 데이터 레이트를 사용하여 제 1 무선 트랜시버를 통해, 컨텐츠 아이템의 랜덤으로 선택된 부분을 네트워크 내의 다른 차량 기반 통신 장치에 송신하는 단계를 더 포함한다.
일부 실시예에서, 제 1 무선 트랜시버는 Wi-Fi 네트워크를 통해 통신하고, 제 2 무선 트랜시버는 셀룰러 네트워크를 통해 통신한다.
일부 실시예는, 실행될 때, 컴퓨팅 시스템으로 하여금, 차량 기반 무선 네트워크에서 컨텐츠를 분배하기 위한 위의 프로세스 중 임의의 하나 이상을 수행하게 하도록 구성된 컨텐츠를 포함하는 비-일시적인 컴퓨터 판독 가능 매체를 제공한다.
본 발명의 실시예가 예시되고 설명되었지만, 위에서 언급된 바와 같이, 본 발명의 사상 및 범위를 벗어나지 않고 다수의 변경이 이루어질 수 있다. 따라서, 본 발명의 범위는 위의 개시내용에 의해 제한되지 않는다.

Claims (15)

  1. 차량 기반 무선 네트워크에서 컨텐츠를 분배하기 위한 시스템으로서,
    제 1 차량 기반 통신 장치와,
    제 2 차량 기반 통신 장치를 포함하되,
    상기 제 1 장치는,
    셀룰러 네트워크를 통해, 컨텐츠 분배자로부터 컨텐츠 아이템을 수신하고,
    Wi-Fi 네트워크를 통해, 상기 컨텐츠 아이템의 제 1 부분을 상기 제 2 차량 기반 통신 장치에 송신하고 ― 상기 제 1 부분은 상기 제 1 장치에 의해 랜덤으로 선택됨 ― ,
    상기 Wi-Fi 네트워크를 통해, 상기 제 2 장치로부터 상기 컨텐츠 아이템의 제 2 부분에 대한 요청을 수신하고,
    수신된 요청에 대한 응답으로, 상기 Wi-Fi 네트워크를 통해, 상기 컨텐츠 아이템의 제 2 부분을 상기 제 2 장치에 송신하도록 구성되고,
    상기 제 2 장치는,
    상기 셀룰러 네트워크를 통해, 상기 컨텐츠 분배자로부터 제 3 부분을 요청하고,
    상기 셀룰러 네트워크를 통해, 상기 제 3 부분을 수신하도록 구성되는
    차량 기반 무선 네트워크에서 컨텐츠를 분배하기 위한 시스템.
  2. 제 1 항에 있어서,
    컨텐츠 분배자를 더 포함하되,
    상기 컨텐츠 분배자는,
    상기 셀룰러 네트워크를 통해, 상기 컨텐츠 아이템을 식별하는 알림(announcement)을 상기 제 1 장치에 송신하고,
    상기 알림에 대한 응답으로, 상기 제 1 장치로부터 상기 식별된 컨텐츠 아이템에 대한 요청을 수신하고,
    상기 셀룰러 네트워크를 통해, 상기 컨텐츠 아이템을 인증하도록 구성된 프루프(proof)를 상기 제 1 장치에 송신하고,
    상기 셀룰러 네트워크를 통해, 상기 컨텐츠 아이템을 상기 제 1 장치에 송신하도록 구성되는
    차량 기반 무선 네트워크에서 컨텐츠를 분배하기 위한 시스템.
  3. 제 2 항에 있어서,
    상기 제 1 장치는 추가로, 상기 컨텐츠 분배자로부터 수신된 프루프에 기초하여 상기 컨텐츠 아이템의 소스 및 컨텐츠를 인증하도록 구성되는
    차량 기반 무선 네트워크에서 컨텐츠를 분배하기 위한 시스템.
  4. 제 2 항에 있어서,
    상기 제 2 장치는 추가로,
    상기 Wi-Fi 네트워크를 통해 상기 제 1 장치로부터 상기 컨텐츠 아이템의 상기 제 1 부분을 수신한 것에 대한 응답으로, 상기 Wi-Fi 네트워크를 통해, 상기 알림에 대한 요청을 상기 제 1 장치에 전송하고,
    상기 Wi-Fi 네트워크를 통해, 상기 제 1 장치로부터 상기 알림을 수신하도록 구성되는
    차량 기반 무선 네트워크에서 컨텐츠를 분배하기 위한 시스템.
  5. 제 2 항에 있어서,
    상기 컨텐츠 분배자는 추가로,
    상기 셀룰러 네트워크를 통해, 상기 알림을 상기 제 2 장치에 송신하고,
    상기 셀룰러 네트워크를 통해, 상기 컨텐츠 아이템의 부분을 상기 제 2 장치에 송신하도록 구성되고,
    상기 송신된 부분은 상기 제 2 장치가 상기 Wi-Fi 네트워크를 통해 수신하지 않은 부분인
    차량 기반 무선 네트워크에서 컨텐츠를 분배하기 위한 시스템.
  6. 제 2 항에 있어서,
    상기 컨텐츠 분배자는 추가로,
    상기 셀룰러 네트워크를 통해, 알림, 프루프 및 컨텐츠 아이템을 상기 차량 기반 무선 네트워크 내의 장치들의 제 1 서브세트에 송신하고 ― 상기 알림은 컨텐츠 아이템을 식별하고, 상기 프루프는 상기 컨텐츠 아이템의 소스 및 상기 컨텐츠 아이템 그 자체를 인증하도록 구성됨 ― ,
    상기 장치들의 제 1 서브세트에 속하는 장치로 하여금, 상기 Wi-Fi 네트워크를 통해, 상기 컨텐츠 아이템의 부분을 상기 차량 기반 무선 네트워크 내의 장치들의 제 2 서브세트에 속하는 장치에 송신하게 하고,
    상기 셀룰러 네트워크를 통해, 잔여 부분을 상기 장치들의 제 2 서브세트에 속하는 장치에 송신하도록 구성되고,
    각각의 잔여 부분은, 상기 제 2 서브세트에 속하는 장치 각각이 전체 컨텐츠 아이템을 수신하는 것을 보장하도록, 상기 장치들의 제 1 서브세트에 속하는 임의의 장치로부터 상기 장치들의 제 2 서브세트에 속하는 장치에 의해 수신되지 않은 부분인
    차량 기반 무선 네트워크에서 컨텐츠를 분배하기 위한 시스템.
  7. 제 1 항에 있어서,
    상기 제 1 장치는 추가로,
    상기 Wi-Fi 네트워크를 통해, 상기 컨텐츠 아이템의 랜덤으로 선택된부분을 상기 제 2 장치에 송신하고,
    상기 Wi-Fi 네트워크를 통해 상기 컨텐츠 아이템의 특정된 부분을 상기 제 2 장치에 송신함으로써, 상기 특정된 부분에 대해 상기 제 2 장치로부터 수신된 요청에 응답하도록 구성되는
    차량 기반 무선 네트워크에서 컨텐츠를 분배하기 위한 시스템.
  8. 제 1 항에 있어서,
    상기 제 1 장치는 추가로,
    상기 Wi-Fi 네트워크를 통해, 상기 컨텐츠 아이템의 랜덤하게 선택된 부분을 반복적으로 송신하도록 구성되고,
    상기 송신은 상기 Wi-Fi 네트워크의 부분인 다수의 다른 차량 기반 통신 장치에 도달하는 브로드캐스트 송신인
    차량 기반 무선 네트워크에서 컨텐츠를 분배하기 위한 시스템.
  9. 제 1 항에 있어서,
    도로 주위의 고정 포지션에 로케이팅된(located) 적어도 하나의 길가 통신 장치(roadside communication device)를 더 포함하고,
    상기 적어도 하나의 길가 통신 장치는,
    상기 Wi-Fi 네트워크를 통해, 상기 제 1 장치로부터 컨텐츠 부분을 수신하고,
    상기 셀룰러 네트워크를 통해, 상기 컨텐츠 부분을 상기 제 2 장치에 송신하도록 구성되는
    차량 기반 무선 네트워크에서 컨텐츠를 분배하기 위한 시스템.
  10. 제 1 항에 있어서,
    상기 제 1 장치는 상기 Wi-Fi 네트워크 상에서 통신하는 제 1 트랜시버를 포함하고,
    상기 제 1 장치는 추가로,
    상기 네트워크 내의 다른 차량 기반 통신 장치와 통신하는 데 사용되는 무선 채널에 대한 활용 레벨을 결정하고,
    상기 활용 레벨이 임계 레벨 미만일 때, 상기 제 1 무선 트랜시버의 송신 데이터 레이트(transmission data rate)를 증가시키고,
    상기 활용 레벨이 임계 레벨을 초과할 때, 상기 제 1 무선 트랜시버의 송신 데이터 레이트를 감소시키고,
    데이터를 상기 네트워크 내의 다른 차량 기반 통신 장치에 송신하도록 구성되는
    차량 기반 무선 네트워크에서 컨텐츠를 분배하기 위한 시스템.
  11. 제 10 항에 있어서,
    상기 활용 레벨은 상기 무선 채널 상의 유휴 시간의 측정치인
    차량 기반 무선 네트워크에서 컨텐츠를 분배하기 위한 시스템.
  12. 제 10 항에 있어서,
    상기 제 1 장치는 추가로,
    상기 무선 채널이 시간적으로 50% 미만으로 유휴 상태임을 상기 제 1 장치가 검출할 때, 상기 무선 트랜시버의 유효 송신 범위를 감소시키도록 상기 송신 데이터 레이트를 증가시키고,
    상기 무선 채널이 시간적으로 50% 초과로 유휴 상태임을 상기 제 1 장치가 검출할 때, 상기 무선 트랜시버의 유효 송신 범위를 증가시키도록 상기 송신 데이터 레이트를 감소시키도록 구성되는
    차량 기반 무선 네트워크에서 컨텐츠를 분배하기 위한 시스템.
  13. 제 10 항에 있어서,
    상기 제 1 장치는 상기 셀룰러 네트워크를 통해 통신하는 제 2 무선 트랜시버를 더 포함하고,
    상기 제 1 장치는 추가로,
    상기 제 2 무선 트랜시버를 통해, 컨텐츠 분배자로부터 컨텐츠 아이템을 수신하고,
    상기 컨텐츠 분배자로부터 수신된 프루프에 기초하여 상기 컨텐츠 아이템의 소스 및 무결성(integrity)을 검증하고,
    상기 송신 데이터 레이트를 사용하여 상기 제 1 무선 트랜시버를 통해, 상기 컨텐츠 아이템의 부분을 상기 네트워크 내의 다른 차량 기반 통신 장치에 송신하도록 구성되는
    차량 기반 무선 네트워크에서 컨텐츠를 분배하기 위한 시스템.
  14. 제 1 차량 기반 통신 장치에서의 방법으로서,
    셀룰러 네트워크를 통해, 컨텐츠 분배자로부터 컨텐츠 아이템을 수신하는 단계와,
    Wi-Fi 네트워크를 통해, 상기 컨텐츠 아이템의 제 1 부분을 제 2 차량 기반 통신 장치에 송신하는 단계 ― 상기 제 1 부분은 상기 제 1 장치에 의해 랜덤으로 선택됨 ― 와,
    상기 Wi-Fi 네트워크를 통해, 상기 제 2 장치로부터 상기 컨텐츠 아이템의 제 2 부분에 대한 요청을 수신하는 단계와,
    상기 수신된 요청에 대한 응답으로, 상기 Wi-Fi 네트워크를 통해, 상기 컨텐츠 아이템의 제 2 부분을 상기 제 2 장치에 송신하는 단계를 포함하는
    제 1 차량 기반 통신 장치에서의 방법.
  15. 제 14 항에 있어서,
    상기 네트워크 내의 다른 차량 기반 통신 장치와 통신하는 데 사용되는 무선 채널에 대한 활용 레벨을 결정하는 단계와,
    상기 활용 레벨이 임계 레벨 미만일 때, 상기 제 1 장치의 제 1 무선 트랜시버의 송신 데이터 레이트를 증가시키는 단계와,
    상기 활용 레벨이 임계 레벨을 초과할 때, 상기 제 1 무선 트랜시버의 송신 데이터 레이트를 감소시키는 단계와,
    상기 네트워크 내의 다른 차량 기반 통신 장치에 데이터를 송신하는 단계를 더 포함하는
    제 1 차량 기반 통신 장치에서의 방법.
KR1020197004151A 2016-07-12 2017-07-12 차량 기반 무선 네트워크에서 컨텐츠를 분배하는 시스템 및 방법 KR102274185B1 (ko)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US201662361368P 2016-07-12 2016-07-12
US62/361,368 2016-07-12
US15/285,108 US10420013B2 (en) 2016-07-12 2016-10-04 Systems and methods for distributing content in a vehicle-based wireless network
US15/285,108 2016-10-04
US15/285,072 2016-10-04
US15/285,072 US9936440B2 (en) 2016-07-12 2016-10-04 Systems and methods for automatic transmission rate control in a vehicle-based wireless network
PCT/US2017/041765 WO2018013719A1 (en) 2016-07-12 2017-07-12 Systems and methods for distributing content in a vehicle-based wireless network

Publications (2)

Publication Number Publication Date
KR20190067764A true KR20190067764A (ko) 2019-06-17
KR102274185B1 KR102274185B1 (ko) 2021-07-06

Family

ID=60940999

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197004151A KR102274185B1 (ko) 2016-07-12 2017-07-12 차량 기반 무선 네트워크에서 컨텐츠를 분배하는 시스템 및 방법

Country Status (5)

Country Link
US (4) US9936440B2 (ko)
EP (1) EP3485480B1 (ko)
KR (1) KR102274185B1 (ko)
CN (1) CN109983521A (ko)
WO (1) WO2018013719A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102249631B1 (ko) * 2020-03-11 2021-05-10 한국과학기술원 동적인 차량-사물 통신 환경의 분산 서비스 레지스트리를 위한 차량의 전자 장치 및 그의 동작 방법

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9936440B2 (en) * 2016-07-12 2018-04-03 Coco Communications Corp. Systems and methods for automatic transmission rate control in a vehicle-based wireless network
US11871485B2 (en) * 2017-08-09 2024-01-09 Visa International Service Association Verification of interactions system and method
US11868509B2 (en) * 2017-11-17 2024-01-09 Telefonaktiebolaget Lm Ericsson (Publ) Method and arrangement for detecting digital content tampering
US10667172B2 (en) * 2018-06-18 2020-05-26 Akamai Technologies, Inc. Download management with congestion mitigation for over the air content delivery to vehicles
US11012362B2 (en) 2018-06-18 2021-05-18 Akamai Technologies, Inc. Download management with congestion mitigation for over the air content delivery to vehicles
US10779340B2 (en) * 2018-06-19 2020-09-15 Cisco Technology, Inc. Dynamic anchoring of wireless devices to a designated wireless controller
US10965794B2 (en) * 2018-08-02 2021-03-30 Gogo Business Aviation Llc On-board self-healing network for delivery of vehicle passenger-consumable content
US11601825B2 (en) * 2018-08-08 2023-03-07 Faraday&Future Inc. Connected vehicle network data transfer optimization
US10803025B2 (en) * 2018-09-06 2020-10-13 At&T Intellectual Property I, L.P. System and process for scalable and secure content delivery
WO2020210896A1 (en) * 2019-04-18 2020-10-22 Farmers Edge Inc. Telematics device for communicating and collecting agricultural data
US11877350B2 (en) * 2019-07-19 2024-01-16 Mo-Dv, Inc. Special local area network with secure data transfer
KR20210033308A (ko) * 2019-09-18 2021-03-26 현대자동차주식회사 차량의 무선 업데이트 장치 및 그 방법
CN111417112B (zh) * 2020-02-19 2023-02-07 成都四相致新科技有限公司 一种分布式ota网关组网及终端接入方法及ota升级系统
US11537383B2 (en) * 2020-10-13 2022-12-27 Argo AI, LLC Systems and methods for improved smart infrastructure data transfer
KR20230105550A (ko) * 2022-01-04 2023-07-11 엘지전자 주식회사 기능 업그레이드가 가능한 전자 기기, 및 전자 기기의 기능을 업그레이드하는 방법

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8478209B2 (en) * 2011-05-05 2013-07-02 GM Global Technology Operations LLC Method and apparatus for multimedia content promotion in vehicular wireless networks
US8494709B2 (en) * 2008-02-25 2013-07-23 Mitsubishi Electric Corporation On-vehicle communication device
US9084190B2 (en) * 2013-07-10 2015-07-14 Hyundai Motor Company Apparatus and method for inter-vehicle communication
US9135640B2 (en) * 2009-05-12 2015-09-15 Google Inc. Distributing content
US9135820B2 (en) * 2010-05-24 2015-09-15 Renesas Electronics Corporation Communication system, vehicle-mounted terminal, roadside device

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7421248B1 (en) * 2002-11-12 2008-09-02 Cisco Technology, Inc. Method and apparatus for adjusting operational parameter of a wireless device bases upon a monitored characteristic
US7188026B2 (en) 2003-05-12 2007-03-06 Dash Navigation, Inc. Hierarchical floating car data network
US7869906B2 (en) 2007-01-08 2011-01-11 Ford Global Technologies Wireless gateway apparatus and method of bridging data between vehicle based and external data networks
JP2009174864A (ja) * 2008-01-21 2009-08-06 Kenwood Corp 配信システム及び車載器
CN102111025B (zh) 2009-12-25 2013-03-27 中山大洋电机股份有限公司 一种电动机的永磁转子
US8762482B2 (en) * 2010-01-07 2014-06-24 Robert Bosch Gmbh Dead spot mitigation methods for media applications in vehicular environments
US8447231B2 (en) 2010-10-29 2013-05-21 GM Global Technology Operations LLC Intelligent telematics information dissemination using delegation, fetch, and share algorithms
WO2013042224A1 (ja) 2011-09-21 2013-03-28 パイオニア株式会社 非接触電力送電装置、非接触電力受電装置、及び非接触給電システム
US9173100B2 (en) 2011-11-16 2015-10-27 Autoconnect Holdings Llc On board vehicle network security
US20130139140A1 (en) 2011-11-29 2013-05-30 Ford Global Technologies, Llc Method and Apparatus for Mobile Mesh Network Vehicular Software Updating
US9119087B2 (en) * 2012-09-28 2015-08-25 Intel Corporation Systems and methods for hybrid wireless content delivery
US9197314B1 (en) * 2013-11-08 2015-11-24 Gogo Llc Data delivery to devices on vehicles using multiple forward links
US9532194B2 (en) * 2014-05-09 2016-12-27 Cisco Technology, Inc. Dynamic adjustment of wireless communication transmission rates
US9402093B2 (en) * 2014-09-03 2016-07-26 Spotify Ab Systems and methods for temporary access to media content
US10045088B2 (en) * 2014-09-30 2018-08-07 At&T Intellectual Property I, L.P. Method and apparatus for distributing content locally
CN105577291B (zh) * 2014-10-09 2020-05-19 中兴通讯股份有限公司 一种用于无线通信系统中的空闲信道检测方法和系统
US9578104B2 (en) * 2014-10-31 2017-02-21 Gogo Llc Resumption of play for a content-delivery session
CN105792381A (zh) * 2014-12-23 2016-07-20 华为技术有限公司 无线局域网中的竞争调节方法、装置以及系统
US9824279B2 (en) * 2015-03-24 2017-11-21 Facebook, Inc. Systems and methods for providing playback of selected video segments
US11805467B2 (en) * 2015-03-25 2023-10-31 Comcast Cable Communications, Llc Distributed content delivery for moving devices
EP3295653A1 (en) * 2015-05-14 2018-03-21 Airbiquity Inc. Centralized management of mobile-assisted motor vehicle software upgrading and vehicle data analytics
CN106302622B (zh) * 2015-06-12 2021-01-26 中兴通讯股份有限公司 车联网系统及其中的业务实现方法和装置
US9680758B2 (en) * 2015-09-02 2017-06-13 Intel Corporation Apparatus and method to increase throughput of a transmitter
CN105282688B (zh) * 2015-10-30 2018-12-25 东莞酷派软件技术有限公司 一种信息传输的方法及路侧单元
CN205336314U (zh) * 2015-12-04 2016-06-22 深圳市尊豪网络科技有限公司 一种车载WiFi应用系统
US10158687B2 (en) * 2016-03-01 2018-12-18 Hughes Network Systems, Llc Caching using multicast radio transmissions
US9992539B2 (en) * 2016-04-05 2018-06-05 Google Llc Identifying viewing characteristics of an audience of a content channel
US9936440B2 (en) * 2016-07-12 2018-04-03 Coco Communications Corp. Systems and methods for automatic transmission rate control in a vehicle-based wireless network

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8494709B2 (en) * 2008-02-25 2013-07-23 Mitsubishi Electric Corporation On-vehicle communication device
US9135640B2 (en) * 2009-05-12 2015-09-15 Google Inc. Distributing content
US9135820B2 (en) * 2010-05-24 2015-09-15 Renesas Electronics Corporation Communication system, vehicle-mounted terminal, roadside device
US8478209B2 (en) * 2011-05-05 2013-07-02 GM Global Technology Operations LLC Method and apparatus for multimedia content promotion in vehicular wireless networks
US9084190B2 (en) * 2013-07-10 2015-07-14 Hyundai Motor Company Apparatus and method for inter-vehicle communication

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102249631B1 (ko) * 2020-03-11 2021-05-10 한국과학기술원 동적인 차량-사물 통신 환경의 분산 서비스 레지스트리를 위한 차량의 전자 장치 및 그의 동작 방법

Also Published As

Publication number Publication date
US20180018159A1 (en) 2018-01-18
WO2018013719A1 (en) 2018-01-18
US20180343603A1 (en) 2018-11-29
US20180020392A1 (en) 2018-01-18
US10420013B2 (en) 2019-09-17
EP3485480B1 (en) 2023-10-25
EP3485480A1 (en) 2019-05-22
US9936440B2 (en) 2018-04-03
US20200187087A1 (en) 2020-06-11
US10609623B2 (en) 2020-03-31
KR102274185B1 (ko) 2021-07-06
EP3485480A4 (en) 2020-01-15
CN109983521A (zh) 2019-07-05
US11463940B2 (en) 2022-10-04

Similar Documents

Publication Publication Date Title
KR20190067764A (ko) 차량 기반 무선 네트워크에서 컨텐츠를 분배하는 시스템 및 방법
US11388170B2 (en) Systems and methods for objective-based scoring using machine learning techniques
US10049196B2 (en) Enhanced task scheduling for data access control using queue protocols
US20240086237A1 (en) Triggered queue transformation
US20230244536A1 (en) Dynamic model-based access right predictions
US20180191723A1 (en) Enhanced load processing using linked hierarchical data structures
US11848765B2 (en) Allocating one or more items during a live event inside a venue
US11223660B2 (en) Establishing communication links using routing protocols
US20180329751A1 (en) Iterative and hierarchical processing of request partitions
US10447615B2 (en) Enhanced real-time linking methods and systems
US10212194B2 (en) Server controlled throttling of client to server requests
US20160285954A1 (en) Prioritized link establishment for data transfer using task scheduling
WO2018231991A1 (en) Systems and methods for big-data resource management
CN112436974B (zh) Cdn数据资源一致性检测方法、装置以及计算机设备

Legal Events

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