KR102260177B1 - 선택된 시각에서 개런티 프리페칭을 사용하는 무선 네트워크를 통한 효과적인 콘텐트 전달 - Google Patents

선택된 시각에서 개런티 프리페칭을 사용하는 무선 네트워크를 통한 효과적인 콘텐트 전달 Download PDF

Info

Publication number
KR102260177B1
KR102260177B1 KR1020177002520A KR20177002520A KR102260177B1 KR 102260177 B1 KR102260177 B1 KR 102260177B1 KR 1020177002520 A KR1020177002520 A KR 1020177002520A KR 20177002520 A KR20177002520 A KR 20177002520A KR 102260177 B1 KR102260177 B1 KR 102260177B1
Authority
KR
South Korea
Prior art keywords
content
communication terminal
prefetching
guarantee
user
Prior art date
Application number
KR1020177002520A
Other languages
English (en)
Other versions
KR20170031702A (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 KR20170031702A publication Critical patent/KR20170031702A/ko
Application granted granted Critical
Publication of KR102260177B1 publication Critical patent/KR102260177B1/ko

Links

Images

Classifications

    • H04L67/2847
    • 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
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/56Provisioning of proxy services
    • H04L67/568Storing data temporarily at an intermediate stage, e.g. caching
    • H04L67/5681Pre-fetching or pre-delivering data based on network characteristics
    • H04L67/16
    • H04L67/22
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/957Browsing optimisation, e.g. caching or content distillation
    • G06F16/9574Browsing optimisation, e.g. caching or content distillation of access to content, e.g. by caching

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

콘텐트 전달 방법은 콘텐트가 콘텐트 소스(24)로부터 사용자(32)의 통신 단말기(28)로 연속 프리페치되어 상기 통신 단말기를 상기 콘텐트 소스와 동기화된 상태로 유지하는 개런티 프리페칭 모드를 규정하는 단계를 포함하고 있다. 상기 사용자가 주어진 콘텍트에 접근할 것으로 예상되는 하나 이상의 시각 간격이 식별된다. 상기 식별된 시각 간격 동안, 상기 개런티 프리페칭 모드를 사용하여 상기 콘텐트 소스로부터 상기 통신 단말기로 상기 주어진 콘텐트가 프리페치된다.

Description

선택된 시각에서 개런티 프리페칭을 사용하는 무선 네트워크를 통한 효과적인 콘텐트 전달{EFFICIENT CONTENT DELIVERY OVER WIRELESS NETWORKS USING GUARANTEED PREFETCHING AT SELECTED TIMES-OF-DAY}
본 발명은 일반적으로 콘텐트 전달에 관한 것이고, 특히 통신 단말기로의 콘텐트 전달을 위한 방법 및 시스템에 관한 것이다.
콘텐트를 무선 사용자에게 전달하기 위한 다양한 기술이 알려져 있다. 예를 들어, 여기에 언급되어 통합된 미국 특허 8,601,052는 무선 휴대형 컴퓨터 디바이스(PCD)를 위한 콘텐트 프리페칭을 실행하기 위한 방법 및 시스템을 기술하고 있다.
다른 예로서, 여기에 언급되어 통합된 미국 특허 출원 공개 2010/0161831은 콘텐트 및 트래픽 관리 시스템을 기술하고 있다. 모바일 디바이스는 통신 링크를 통해 사용자 및 콘텐트 제공자에게 접속가능하다. 이러한 시스템은 시간에 따른 다양한 파라미터를 추적하고, 사용자 콘텐트-관련 행동, 사용자 통신 행동, 사용자 외부 행동, 및 통신 링크의 파라미터에 응답하여 사전규정되거나 계획된 콘텐트와 관련하여 통신의 스케줄을 작성한다.
여기에 기술된 본 발명의 실시예는 콘텐트가 콘텐트 소스로부터 사용자의 통신 단말기로 연속 프리페치(prefetch)되어 상기 통신 단말기를 상기 콘텐트 소스와 동기화된 상태로 유지하는 개런티 프리페칭 모드를 규정하는 단계를 포함하는 콘텐트 전달 방법을 제공한다. 상기 사용자가 주어진 콘텍트에 접근할 것으로 예상되는 하나 이상의 시각(time-of-day) 간격이 식별된다. 상기 식별된 시각 간격 동안, 상기 개런티 프리페칭 모드를 사용하여 상기 콘텐트 소스로부터 상기 통신 단말기로 상기 주어진 콘텐트가 프리페치된다.
일부 실시예에서, 상기 방법은 상기 개런티 프리페칭 모드와 상이한 최선 노력(best-effort) 프리페칭 모드를 규정하는 단계, 및 상기 식별된 시각 간격 밖에서 상기 최선 노력 프리페칭 모드를 사용하여 상기 주어진 콘텐트를 상기 통신 단말기에 프리페치하는 단계를 더 포함한다. 하나의 실시예에서, 상기 개런티 프리페칭 모드를 사용하여 프리페치하는 단계는 변경된 것으로 검출되는 콘텐트 아이템의 임계 백분율 보다 적게 프리페치하는 단계를 포함하고, 상기 최선 노력 프리페칭 모드를 사용하여 프리페치하는 단계는 변경된 것으로 검출된 콘텐트 아이템의 임계 백분율 보다 많이 프리페치하는 단계를 포함한다.
일부 실시예에서, 상기 개런티 프리페칭 모드를 사용하여 상기 주어진 콘텐트를 프리페치하는 단계는 상기 식별된 시각 간격 동안 연속으로 상기 주어진 콘텐트의 변화를 검출하는 단계, 및 상기 변화 또는 상기 변화된 콘텐트를 상기 통신 단말기에 프리페치하는 단계를 포함한다. 상기 변화를 검출하는 단계는 상기 콘텐트 소스에서 상기 콘텐트 아이템을 연속으로 크롤링(crawl)하는 단계를 포함하는 것을 특징으로 하는 콘텐트 전달 방법. 추가로 또는 대안으로, 상기 변화를 검출하는 단계는 상기 변화를 나타내는 통지를 상기 콘텐트 소스로부터 수신하는 단계를 포함한다.
하나의 실시예에서, 상기 시각 간격을 식별하는 단계는 상기 통신 단말기에 설치된 소프트웨어 에이전트에 의해 상기 통신 단말기의 사용 패턴을 감시하는 단계, 및 상기 사용 패턴에 기초하여 상기 시각 간격을 식별하는 단계를 포함한다. 다른 실시예에서, 상기 시각 간격을 식별하는 단계는 상기 콘텐트 소스에서 콘텐트 변화의 시간 패턴을 감시하는 단계, 및 상기 콘텐트 변화의 패턴에 기초하여 상기 시각 간격을 식별하는 단계를 포함한다.
또 다른 실시예에서, 상기 방법은 콘텐트 아이템의 순시 특징에 응답하여 상기 개런티 프리페칭 모드를 사용하여 상기 콘텐트 아이템을 프리페치하도록 결정하는 단계를 포함한다. 개시된 실시예에서, 상기 주어진 콘텐트를 프리페치하는 단계는 프리페치할 하나 이상의 후보 콘텐트 아이템을 상기 통신 단말기에 나타내는 단계, 상기 후보 콘텐트 아이템중 하나 이상을 상기 통신 단말기에 의해 선택하는 단계, 및 상기 선택된 콘텐트 아이템을 상기 통신 단말기에 의해 프리페치하는 단계를 포함한다.
다른 실시예에서, 상기 주어진 콘텐트를 프리페치하는 단계는 프리페치될 콘텐트 아이템의 제1 시그너처(signature)를 상기 통신 단말기에 나타내는 단계, 상기 콘텐트 아이템을 상기 통신 단말기에 의해 프리페치하는 단계, 상기 프리페치된 콘텐트 아이템에 대해 제2 시그너처를 계산하는 단계, 및 상기 제1 시그너처가 상기 제2 시그너처와 일치하는 경우에만 상기 콘텐트 아이템을 상기 통신 단말기에 캐시하는 단계를 포함한다. 일부 실시예에서, 상기 방법은 프리페치되는 것으로 사용자에게 제공된 하나 이상의 콘텐트 아이템을 시각적으로 마크하는 단계를 포함한다.
본 발명의 실시예에 따라, 인터페이스 및 하나 이상의 프로세서를 포함하는 콘텐트 전달 시스템이 추가로 제공되어 있다. 상기 인터페이스는 콘텐트 소스 및 사용자의 통신 단말기와 통신하도록 구성되어 있다. 상기 하나 이상의 프로세서는 콘텐트가 콘텐트 소스로부터 사용자의 통신 단말기로 연속 프리페치되어 상기 통신 단말기를 상기 콘텐트 소스와 동기화된 상태로 유지하는, 개런티 프리페칭 모드의 규정을 유지하고, 상기 사용자가 주어진 콘텍트에 접근할 것으로 예상되는 하나 이상의 시각 간격을 식별하고, 상기 식별된 시각 간격 동안, 상기 개런티 프리페칭 모드를 사용하여 상기 콘텐트 소스로부터 상기 통신 단말기로 상기 주어진 콘텐트를 프리페치하도록 구성되어 있다.
본 발명의 실시예에 따라, 프로그램 명령어가 콘텐트 소스 및 사용자의 통신 단말기와 통신하는 콘텐트 전달 시스템의 하나 이상의 프로세서에 의해 판독될 때, 상기 하나 이상의 프로세서로 하여금, 콘텐트가 콘텐트 소스로부터 사용자의 통신 단말기로 연속 프리페치되어 상기 통신 단말기를 상기 콘텐트 소스와 동기화된 상태로 유지하는, 개런티 프리페칭 모드의 규정을 유지하도록 하고, 상기 사용자가 주어진 콘텍트에 접근할 것으로 예상되는 하나 이상의 시각 간격을 자동으로 식별하도록 하고, 상기 식별된 시각 간격 동안, 상기 개런티 프리페칭 모드를 사용하여 상기 콘텐트 소스로부터 상기 통신 단말기로 상기 주어진 콘텐트를 프리페치하도록 하는, 프로그램 명령어가 저장된 유형 비임시 컴퓨터 판독가능 매체를 포함하는 컴퓨터 소프트웨어 제품이 또한 제공되어 있다.
본 발명은 다음의 도면과 함께 아래의 실시예의 상세한 설명으로부터 보다 잘 이해될 것이다.
도 1은 본 발명의 실시예에 따른, 콘텐트 전달 시스템을 개략적으로 도시한 블록도이다.
도 2는 본 발명의 실시예에 따른, 콘텐트 전달을 위한 방법을 개략적으로 도시한 순서도이다.
개요
여기에 기술된 본 발명의 실시예는 스마트폰, 태블릿 컴퓨터 및 다른 무선 통신 단말기에 콘텐트를 전달하기 위한 향상된 방법 및 시스템을 제공한다. 개시된 실시예에서, 콘텐트 전달 시스템은, 무선 통신 단말기에 의한 소비를 위한 콘텐트를 웹 사이트와 같은 콘텐트 소스로부터 프리페치한다. 주어진 단말기 및 주어진 콘텐트에 있어서, 시스템은 개런티 프리페칭 모드 및 최선 노력 프리페칭 모드의 적어도 2개의 동작 모드를 사용한다.
개런티 프리페칭 모드에서, 시스템은 주어진 콘텐트의 변화를 계속 추적하고, 단말기에 캐시된 콘텐트가 콘텐트 소스의 콘텐트와 계속 동기화되도록 보장한다. 이러한 연속 동기화는 예를 들어, 계속 주어진 콘텐트의 콘텐트 아이템(예를 들어, 웹페이지)를 크롤링하고 변경된 임의의 콘텐트 아이템을 프리페칭함으로써 구현될 수 있다. 개런티 모드에서 동작할 때, 주어진 콘텐트로의 사용자 접근 요구는 매우 높은 확률로 단말기의 캐시로부터 수용되어 작은 지연 속도 및 강화된 사용자 경험을 제공할 것이다.
최선 노력 프리페칭 모드에서, 아무런 개런티가 주어지지 않고, 프리페칭은 유용한 리소스를 사용하여 실현가능한 대로 실행된다. 이러한 최선 노력 모드는 개런티 모드 보다는 상당히 적은 시스템 리소스를 유발하지만, 한편 콘텐트 소스로부터 콘텐트의 페칭을 필요로 하는 캐시 미스의 확률이 보다 높아져 사용자 경험을 감소시킨다.
주어진 단말기 및 주어진 콘텐트에 있어서, 시스템은 보통, 사용자가 콘텐트에 접근할 것으로 예상되는 하나 이상의 시각 간격을 식별한다. 이러한 시스템은 이러한 식별된 시각 간격 동안 개런티 모드를 사용하고 그렇지 않은 경우에는 최선 노력 모드를 사용하여 콘텐트를 단말기로 프리페치한다. 다양한 실시예에서, 시스템은 시간에 따른 사용자의 콘텐트 소비 패턴, 시간에 따른 사용자의 지리학적 위치 패턴, 및 상이한 시간 및 위치에서의 상이한 무선 접속의 유용성과 같은, 다양한 요인에 기초하여 시각 간격을 자동으로 식별한다. 이러한 특성은 예를 들어, 단말기에 설치된 소프트웨어 에이전트를 사용하여 연구될 수 있다.
개시된 기술은 보통 다양한 콘텐트 소스로부터 다양한 콘텐트를 소비하는 방대한 수의 단말기를 돕도록 사용된다. 개시된 기술을 사용함으로써, 각각의 사용자에게, 콘텐트가 실제 필요한 선택된 시간 동안 개런티 고속 콘텐트 액세스가 주어진다. 다른 시간에, 시스템 리소스는 다른 사용자에게 할당된다. 따라서, 개시된 기술은 고품질 사용자 경험을 유지하면서, 유용한 통신 및 콘텐트 전달 리소스의 사용을 극대화하는데 있어 매우 효과적이다.
시스템 설명
도 1은 본 발명의 실시예에 따른, 콘텐트 전달 시스템(20)을 개략적으로 설명하는 블록도이다. 시스템(20)은 사용자(32)에 의해 동작되는 하나 이상의 무선 통신 단말기(28)에 의해 사용되기 위한 콘텐트를 하나 이상의 콘텐트 소스(24)로부터 프리페치한다. 이러한 종류의 시스템은 예를 들어, 콘텐트 프로바이더 또는 무선 서비스 프로바이더에 의해 작동될 수 있다.
콘텐트 소스(24)는 예를 들어, 웹사이트, 포털, 콘텐트 전달 네트워크(CDN), 데이터 센터 또는 임의의 다른 적절한 타입의 데이터 소스를 포함할 수 있다. 단말기(28)는 예를 들어, 휴대폰, 스마트폰, 태블릿 컴퓨터, 랩톱 컴퓨터 또는 사용자에게 콘텐트를 제공할 수 있고 무선 통신 기능을 갖고 있는 임의의 다른 적절한 디바이스를 포함할 수 있다. 본원에서, 용어 "프리페칭"은 사용자에 의한 해당 콘텐트에 대한 직접 요청에 응답하지 않고 실행되는 무선 단말기로 콘텐트 소스로부터 콘텐트를 전송하는 것을 가리킨다.
콘텐트 소스(24) 및 단말기(28)는 물론 시스템(20)의 다양한 엘리먼트는 하나 이상의 유선 또는 무선 통신망을 통해 서로 통신한다. 본 예에서, 콘텐트 소스(24)는 인터넷(36)을 통해 접근되고, 단말기(28)는 무선망(40), 예를 들어, 셀룰러 네트워크를 통해 인터넷에 접근한다. 따라서, 콘텐트 소스로부터 단말기로의 양단간 콘텐트 경로는 유선과 무선 링크를 모두 포함하고 있다.
도 1의 예에서, 시스템(20)은 인터넷에 접속된 프리페칭 서브시스템(56) 및 프리페치 세팅 유닛(52), 및 각각의 단말기(28)에 설치된 각각의 프리페치 에이전트(44)를 포함하고 있다. 각각의 단말기(28)는 콘텐트 아이템을 임시 저장하기 위한 각각의 콘텐트 캐시(48)를 더 포함하고 있다. 캐시(48)에 캐시된 콘텐트 아이템(예를 들어, 웹 페이지)은 콘텐트 소스(24)로부터의 콘텐트 검색의 지연 시간을 유발하지 않고, 적은 지연시간으로 사용자에게 제공될 수 있다(예를 들어, 단말기에 실행되는 앱 또는 브라우저에 표시될 수 있다).
프리페치 서브시스템(56)은 인터넷(36)에 접속하기 위한 네트워크 인터페이스(60), 크롤러(64) 및 콘텐트 제공 유닛(68)을 포함하고 있다. 크롤러(64)는 데이터 소스(24) 내의 콘텐트 아이템을 크롤링하고, 콘텐트의 변화를 검출하고, 선택된 콘텐트 아이템을 검색하도록 구성되어 있다. 콘텐트 제공 유닛(68)은 프리페치하기 위한 유용한 콘텐트를 단말기의 에이전트(44)에 통지하고, 에이전트(44)와 이러한 콘텐트의 전송을 조정하고, 전달 전에 콘텐트를 사전 처리하도록 구성되어 있다. 본원에서, 용어 "변화"는 갱신된 콘텐트를 갖는 기존의 콘텐트 아이템 및, 새롭게 생성된 콘텐트 아이템 모두를 가리킨다.
다양한 실시예에서, 콘텐트 제공 유닛(68)은 안드로이드 디바이스용 Goggle Cloud Messaging (GCM) 서비스 또는 iOS 디바이스용 Apple Push Notification (APN)과 같은 통지를 에이전트(44)에 전송하기 위해 다수의 효과적인 기존 기술을 사용할 수 있다.
에이전트(44)는 보통 캐시(48)를 관리하고, 단말기(28)에 생성된 콘텐트 요청을 가로채고, 캐시로부터 또는 콘텐트 소스로부터 요청 콘텐트를 적절한 대로 제공하도록 구성되어 있다. 일부 실시예에서, 에이전트(44)는 또한 하술되는 바와 같이, 프리페칭 동작을 돕기 위한 사용 패턴을 추적하도록 구성되어 있다. 에이전트(44)는 예를 들어, 시간의 함수로서의 콘텐트 소비 패턴, 시간의 함수로서의 단말기의 지리학적 위치, 및 상이한 시간에서의 상이한 통신 기능의 유용도(예를 들어, 셀룰러 접속에 대한 와이파이의 유용도 또는 유용한 대역폭)를 추적할 수 있다. 에이전트(44)는 또한 혼잡 레벨, 속도, 지연시간, 수신기 신호-잡음 비(SNR), 수신기 채널 품질 표시기(CQI), 및/또는 임의의 다른 적절한 파라미터와 같은, 다양한 유용한 통신 채널(예를 들어, 와이파이 또는 셀룰러)의 특성을 추적할 수 있다.
에이전트(44)는 보통 수집된 정보를 프리페치 세팅 유닛(52)에 제공한다. 일부 실시예에서, 에이전트(44)는 단말기 상태(예를 들어, 배터리 상태, 유용한 메모리 또는 CPU 리소스, 또는 에러 이벤트) 또는 네트워크 상태(네트워크 속도 및 부하, 또는 와이파이 접속의 유용도)와 같은 추가 정보를 추적, 로그 및 보고할 수 있다.
에이전트(44)는 프리페칭 세팅 유닛(52)에 의해 제공된 고레벨 프리페치 정책에 따라, 콘텐트를 프리페치할지 여부를 결정하도록 수집 정보의 일부를 사용할 수 있다. 예를 들어, 에이전트(44)는 현 수신기 SNR 값이 프리페치 세팅 유닛(52)에 의해 제공된 특정 임계값 보다 높은 경우에만 콘텐트를 프리페치하도록 결정할 수 있다.
프리페치 세팅 유닛(52)은 보통 유용한 정보에 기초하여, 어느 콘텐트를 어떤 시간에 그리고 어느 프리페칭 모드를 사용하여 프리페치할 지를 결정하도록 구성되어 있다. 상이한 프리페칭 모드의 사용은 아래에서 보다 상세하게 설명되어 있다.
도 1에 도시된 시스템(20) 및 그 다양한 요소들의 구성은 단지 개념 이해를 위해 선택된 구성예이다. 대안의 실시예에서, 임의의 다른 적절한 구성이 사용될 수 있다. 예를 들어, 프리페칭 서브시스템(56) 및 프리페치 세팅 유닛(52)의 기능은 임의의 바람직한 수의 프로세서, 또는 심지어 단일 프로세서를 사용하여 구현될 수 있다. 이러한 다양한 시스템 기능은 임의의 적절한 방식으로 프로세서 사이에서 분할될 수 있다. 하나의 실시예에서, 프리페칭 세팅 유닛(52)은 클라우드 애플리케이션으로 구현되어 있다.
다른 실시예에서, 유닛(52)의 기능은 사용자 단말기의 프리페치 에이전트(44)와 클라우드 애플리케이션 사이에 분할될 수 있다. 이러한 실시예에서, 클라우드 애플리케이션은 사용 패턴에 기초하여 프리페칭 결정을 할 수 있지만, 에이전트(44)는 유용한 배터리 전력 또는 다른 로컬 파라미터에 기초하여 이러한 결정을 무시할 수 있다. 즉, 클라우드 애플리케이션은 프리페치하기 위한 후보 콘텐트 아이템을 에이전트(44)에 식별할 수 있고, 에이전트(44)는 임의의 적절한 기준에 따라 후보 아이템중 하나 이상을 선택하고 프리페치할 수 있다. 이러한 방식으로, 에이전트(44)로부터 유닛(52)으로 로컬 파라미터를 보고할 필요를 줄이거나 제거할 수 있다.
다른 예로서, 프리페치 에이전트(44)는 다양한 방식으로 단말기(28)의 콘텐트 요청을 가로챌 수 있다. 하나의 실시예에서, 에이전트(44)는 단말기(28)에서 실행되는 애플리케이션에 내장되어 있거나, 애플리케이션에 내장된 소프트웨어 개발 키트(SDK)로서 내장되어 있다. 다른 실시예에서, 단말기(28)는 에이전트(44)에 의해 제어되고 출입 트래픽에 노출된 프록시 서버를 실행할 수 있다. 다른 대안으로, 개시된 기술은 온전히 에이전트 없이 네트워크측에서 구현될 수 있다.
여기에 기술된 실시예가 인간 사용자(32)를 주로 가리키지만, 용어 "사용자"는 기계 사용자 역시 가리킬 수 있다. 기계 사용자는 예를 들어, 다양한 사물 인터넷(IoT) 애플리케이션에서와 같이, 무선 통신을 사용하는 다양한 호스트 시스템을 포함할 수 있다.
시스템(20)의 상이한 엘리먼트는 적절한 소프트웨어를 사용하여, 적절한 하드웨어, 예를 들어, 하나 이상의 주문형 집적 회로(ASIC) 또는 필드 프로그래머블 게이트 어레이(FPGA)를 사용하여, 또는 하드웨어 및 소프트웨어 요소의 조합을 사용하여 구현될 수 있다. 캐시(48)는 임의의 적절한 메모리 또는 저장 디바이스를 사용하여 구현될 수 있다. 일부 실시예에서, 에이전트(44), 프리페치 세팅 유닛(52), 크롤러(64) 및/또는 콘텐트 제공 유닛(68)은 여기에 기술된 기능을 수행하도록 소프프웨어로 프로그램된 하나 이상의 범용 프로세서를 사용하여 구현되어 있다. 이러한 소프트웨어는 예를 들어, 네트워크를 통해 전자 형태로 프로세서에 다운로드되거나, 대안으로 또는 추가로, 자기, 광학, 또는 전자 메모리와 같은 비임시 유형 매체에 제공되고 및/또는 저장될 수 있다.
개런티 및 최선 노력 프리페칭 모드를 사용한 콘텐트 전달
특정 사용자(32)에 의해 작동되는 특정 단말기(28)를 생각해보자. 많은 실제의 경우에, 특정 사용자(32)는 일부 예측가능한 시각 사용 패턴에 따라 단말기(28)를 사용하여 콘텐트에 접근한다. 예를 들어, 사용자는 보통 특정 시각에, 특정 데이터 소스(예를 들어, 웹사이트), 또는 심지어 특정 콘텐트 아이템(예를 들어, 웹페이지)에 접근할 것이다. 이러한 사용자 및 단말기는 또한 일부 예측가능한 시각 패턴에 따라 지리적으로 이동할 수 있다. 이러한 단말기의 지리학적 위치는 상이한 시각에서의 유용한 통신 채널의 품질에 영향을 줄 수 있다.
추가로 또는 대안으로, 단말기에 유용한 통신 리소스(예를 들어, 와이파이와 셀룰러 접속, 또는 고대역폭과 저대역폭)는 또한 일부 예측가능한 시각 패턴에 다라 변할 수 있다. 단말기(28)의 다양한 센서의 판독값으로부터 다른 종류의 사용 패턴을 얻을 수 있다. 예를 들어, 가속도계 판독값은 단말기(28)가 장기간 고정된 것을 지시할 수 있어, 사용자가 활동적이지 않을 가능성이 높고 그를 위해 콘텐트를 프리페치할 필요가 없다는 결론에 도달할 수 있다.
다른 적절한 패턴은 물론, 상술된 시각 패턴 모두는 여기에서 함께 사용 패턴으로 부른다. 본원에서, 용어 "시각 패턴"은 시각의 함수로서 일부 특성 행동을 보여주는 임의의 시간 패턴을 가리킨다. 일부 시각 패턴은 상이한 날에 대해 상이할 수 있는데, 예를 들어, 평일 및 주말에 또는 그 달의 상이한 날에 상이한 행동을 나타낼 수 있다. 일부 개시된 실시예에서, 시스템(20)은 상이한 사용자 및 단말기의 사용 패턴을 학습하고 이러한 정보를 사용하여 단말기로의 콘텐트의 프리페칭을 최적화한다.
일부 실시예에서, 시스템(20)은 데이터 소스(24)로부터 단말기(28)의 캐시 메모리(48)로 콘텐트를 프리페칭하는데 사용하기 위한, 개런티 프리페칭 모드 및 최선 노력 프리페칭 모드를 규정한다. 개런티 모드에서, 프리페칭 서브시스템(56)은 콘텐트의 변화를 계속 추적하고, 콘텐트 제공 유닛(68)은 단말기의 캐시(48)에 캐시된 콘텐트가 콘텐트 소스의 콘텐트와 계속 동기화되도록 보장한다. 최선 노력 모드에서, 프리페칭 서브시스템(56)은 콘텐트를 유용한 리소스를 사용하여 실현가능한 것으로 프리페치한다.
보통, 개런티 프리페칭 모드를 사용할 때, 시스템(20)은 변한 것으로 검출된 콘텐트 아이템의 임계 백분율 보다 적게 프리페치한다. 한편, 최선 노력 프리페칭 모드를 사용할 때, 시스템(20)은 보통 변한 것으로 검출된 콘텐트 아이템의 임계 백분율 보다 많게 프리페치한다. 이러한 임계 백분율은 예를 들어, 80%, 90%, 또는 임의의 다른 적절한 값을 포함할 수 있다.
일부 실시예에서, 프리페치되는 콘텐트 또는 현재 개런티 프리페치 모드에 있는 콘텐트는 에이전트(44) 등에 의해 시각적으로 마크되어, 사용자는 그것을 인식할 것이다. 예를 들어, 비디오 클립의 이미지에 대한 특정 아이콘은 이러한 클립이 시스템에 의해 프리페치되었다는 것을 사용자에게 시각적으로 마크할 수 있고, 그래서 사용자는 이러한 클립의 완벽한 제시를 예상해야 한다.
일부 실시예에서, 크롤러(64)는 임의의 특정 단말기, 사용자, 사용 패턴 또는 동작 모드에 관계없이 콘텐트 소스(24)를 크롤링하고 콘텐트 변화를 검출한다. 한편, 제공 유닛(68)은 사용 패턴에 따라 그리고 단말기가 현재 개런티 프리페칭 모드 또는 최선 노력 프리페칭 모드에서 동작하는지 여부에 따라 단말기 마다 상이하게 동작한다.
심지어 개런티 프리페칭 모드에서도, 예를 들어, 시스템에 걸쳐있는 다양한 지연시간으로 인해, 콘텐트 소스(24)와 캐시(48) 사이에 일부 잔류 정도의 비동기가 남아 있을 수 있다. 이러한 잔류 비동기는 보통 매우 작고, 여전히 "개런티 프리페칭"으로 간주된다. 이러한 지연시간은 개시된 프리페칭 모드에 관계없이, 네트워크에 대한 종래의 사용자 접근에 존재할 수 있다.
추가로 또는 대안으로, 일부 최대 허용가능한 프리페칭 "비용"의 레벨은 개런티 프리페칭 모드에 대해 사전 규정될 수 있어, 프리페칭이 사전 규정된 비용을 넘어 리소스를 발생하는 것으로 예상될 때, 콘텐트는 프리페치되지 않을 것이다. 이러한 비용은 프리페칭에 필요한 배터리 에너지(예를 들어, 요구된 에너지가 임계값을 초과하는 경우에 프리페치하지 않는다), 전체 배터리 레벨(예를 들어, 배터리 에너지 레벨이 임계값 아래에 있는 경우에 프리페치하지 않는다), 또는 임의의 다른 적절한 리소스에 대해 규정될 수 있다.
또한 추가로 또는 대안으로, 시스템(20)은 특정 타입의 콘텐트 아이템이 개런티 프리페칭 모드에서도, 변하지 않아도 프리페치될 필요가 없다는 것을 규정할 수 있다. 이러한 콘텐트 아이템에 대한 동기화 부족은 여전히 "개런티 프리페칭"으로 간주된다. 프리페칭될 필요가 없는 콘텐트 아이템은 예를 들어, 토크백 또는 충분히 작은 사용자에 의한 소비의 확률을 갖는 다른 아이템을 포함할 수 있다.
따라서, 개런티 모드는 최선 노력 모드 보다 훨씬 더 낮은 캐시-미스 확률(사용자에 의해 요청된 콘텐트가 캐시(48)에서 발견되지 않고 콘텐트 소스로부터 페치될 필요가 없는 훨씬 더 낮은 확률)을 갖고 있다. 어느 한 모드에서, 크롤러(64)의 크롤링 스케줄(예를 들어, 크롤링의 갱신 사이클 및/또는 순서)는 해당 콘텐트 소스의 과거 콘텐트 변화 패턴 및/또는 사용자의 사용 패턴에 기초하여 (예를 들어, 유닛(52)에 의해) 세팅될 수 있다.
주어진 단말기 및 주어진 콘텐트(예를 들어, 주어진 웹사이트 또는 웹사이트의 세트, 또는 지정된 웹페이지 또는 웹페이지 내의 영역)에 있어서, 개런티와 최선 노력 모드 사이의 변경이 단말기의 사용 패턴, 콘텐트의 변화 패턴, 및/또는 단말기 및 콘텐트의 순간 상태에 기초하여 프리페칭 세팅 유닛(52)에 의해 규정되어 있다.
유닛(52)은 보통 사용자가 주어진 콘텐트에 특성적으로 접근하는 동안 하나 이상의 시각 간격을 식별한다. 유닛(52)은 프리페치 서브시스템(56)에 식별된 시각 간격을 통지한다. 서브시스템(56)은 식별된 시각 간격 동안 개런티 모드를 사용하여, 그리고 이러한 식별된 시각 간격 밖에서 최선 노력 모드를 사용하여, 주어진 콘텐트를 단말기에 프리페치한다.
일부 실시예에서, 유닛(52)은 개런티 프리페칭을 위한 시각 간격을 선택하는데 있어 사용 패턴 이외의 추가 요인을 고려할 수 있다. 이러한 추가 요인은 예를 들어, 순시 레이팅 또는 주어진 콘텐트 아이템의 인기와 같은, 콘텐트 아이템의 순시 특징을 포함할 수 있다. 주어진 사용자에 대한 콘텐트 아이템의 레이팅은 예를 들어, 유닛(52)에 의해, 주어진 사용자에게 유사한 맛, 콘텐트 소비 습관 또는 행동 패턴을 갖는 것으로 알려진 사용자와 같은, 다양한 그룹의 사용자에 대해 결정될 수 있다.
예를 들어, 중요한 스포츠 경기와 같이, 매우 높은 순시 레이팅을 갖는 콘텐트 아이템을 생각해보자. 이러한 발생에 의해 프리페칭 세팅 유닛(52)은 이러한 콘텐트에 잠재적으로 관심있는 것으로 알려진 사용자(32)의 단말기(28)를 개런티 프리페칭 모드로 전환한다. 이러한 전환은 이러한 환경이 사용자의 전형적인 사용 패턴 또는 위치 패턴과 일치하지 않는 경우에도 일어날 수 있다.
개런티 프리페칭을 위해 시각 간격을 선택하는데 있어 유닛(52)이 고려할 수 있는 추가 요인은 상술된 바와 같이, 배터리 상태, 데이터 플랜 상태 또는 센서 판독값과 같은, 단말기의 순시 상태를 포함하고 있다. 이러한 실시예에서, 유닛(52)은 (예를 들어, 사용자의 비용 계획 및 통신 속도를 고려함으로써) 단말기에 대한 통신 비용을 줄이거나, 콘텐트 소비에 의해 발생된 콘텐트 비용을 감소시키거나 배터리 에너지 소비량을 줄이는 것을 목표로 할 수 있다. 상술된 바와 같이, 유닛(52)은 또한 현재 콘텐트 아이템의 순시 레이팅, 또는 주어진 사용자에게 유사한 행동 패턴을 갖는 것으로 알려진 다른 사용자의 행동을 고려할 수 있다.
상술된 바와 같이, 유닛(52)은 일부 사용자가 드문 및/또는 산발적인 콘텐트 사용을 나타내는 것으로 결론지을 수 있다. 유닛(52)은 이러한 사용자의 사용자 경험을 향상시키는데 리소스를 투자하는 것이 비용 효율이 높지 않다고 판정할 수 있다. 이러한 사용자에 있어서, 유닛(52)은 연속 개런티 모드의 간격을 전혀 선택하지 않거나 심지어 전혀 프리페칭하지 않을 수 있다.
이해할 수 있는 바와 같이, 개런티 모드는 상당한 시스템 리소스 - 예를 들어, 크롤러(64), 콘텐트 소스(24) 간의 통신 오버헤드, 서브시스템(56) 및 단말기(28)의 리소스 등을 소비한다. 상이한 단말기 간에 자주 상이한 선택된 시각 간격으로 이러한 모드의 사용을 제한함으로써, 시스템 리소스는 효과적으로 사용될 수 있다.
도 2는 본 발명의 실시예에 따라, 콘텐트 전달을 위한 방법을 개략적으로 도시한 순서도이다. 이러한 방법은 사용 학습 단계 80에서, 주어진 콘텐트에 접근하는데 있어 주어진 단말기의 사용 패턴을 학습하는 프리페칭 세팅 유닛(52)으로 시작한다. 상술된 바와 같이, 이러한 학습 단계는 보통, 에이전트(44)에 의해 제공된 정보, 크롤러(64)에 의해 제공될 수 있는 콘텐트 변화 패턴에 대한 정보, 및/또는 수신 콘텐트 아이템 특징에 대한 정보에 기초한다.
이러한 정보에 기초하여, 유닛(52)은 간격 선택 단계 84에서, 주어진 콘텐트의 개런티 프리페칭을 위한 하나 이상의 시각 간격을 주어진 단말기에 지정한다. 주어진 단말기가 비활성 또는 드물게 활성인 것이 발견되면, 유닛(52)은 개런티 프리페칭에 대한 임의의 시각 간격을 할당하는 것을 억제할 수 있다.
크롤링 단계 86에서, 크롤러(64)는 콘텐트 소스(24)를 크롤링하고 콘텐트의 변화를 검출한다. 시간 체킹 단계 88에서, 프리페칭 서브시스템(56)은 현재 시간이 지정된 시각 간격중 하나 안에 있는지를 체크한다. 만약 그러하다면, 서브시스템(56)은 개런티 프리페칭 단계 92에서, 개런티 프리페칭 모드를 사용하여, 주어진 단말기의 캐시(48)에, 주어진 콘텐트를 프리페치한다. 그렇지 않으면, 즉, 현재 시간이 지정된 시각 간격 밖에 있다면, 서브시스템(56)은 최선 노력 프리페칭 단계 96에서, 최선 노력 프리페칭 모드를 사용하여, 주어진 단말기에, 주어진 콘텐트를 프리페치한다. 어느 경우든, 방법은 유닛(52)이 문제의 단말기의 사용 패턴을 계속 학습하고 갱신하는 단계 80으로 루프백한다.
추가 변형 및 실시예
다양한 실시예에서, 콘텐트 제공 유닛(68) 및 에이전트(44)는 프리페치된 콘텐트의 전송을 조정하기 위한 다양한 프로토콜을 사용할 수 있다. 일부 실시예에서, 유닛(68)은 (콘텐트 소스(24)의 상응하는 콘텐트 아이템이 변하는지를 크롤러(64)가 식별했기 때문에) 캐시(48)에서 오래된 콘텐트 아이템을 가리키는 통지를 에이전트(44)에게 전송한다. 에이전트(44)는 이러한 통지에 응답하여 유닛(68)으로부터 갱신된 콘텐트 아이템을 요청한다.
실시예에서, 유닛(68)은 주어진 시점에 대해 갱신 콘텐트 아이템을 나열한 카탈로그를 에이전트(44)에게 전송한다. 대안의 실시예에서, 유닛(68)은 예를 들어, 사용자에 관심 있는 모든 콘텐트 아이템의 다양한 콘텐트 아이템의 최신 버전 수를 유지하는 카탈로그를 에이전트(44)에게 전송한다. 에이전트(44)는 유지하는 버전이 갱신되었는지를 콘텐트 아이템 마다 결정하고, 그러하다면, 새로운 버전을 프리페치할 수 있다. 후자의 실시예가 때로 바람직할 수 있는데, 그 이유는 유닛(68)이 어느 콘텐트 아이템의 어느 버전이 캐시(48)에서 유용한지에 대한 완전한 정보를 항상 가질 수 없기 때문이다. 예를 들어, 유닛(68)은 캐시(48)로부터 삭제된 아이템 및 실패한 이전의 프리페치 시도를 알지 못할 수 있다.
일부 실시예에서, 프리페칭 동작 자체는 유닛(68)을 수반할 필요는 없다. 예를 들어, 에이전트(44)는 다른 웹사이트 또는 콘텐트 소스로부터 갱신 콘텐트 아이템을 프리페치할 수 있다. 하나의 실시예에서, 유닛(68)으로부터 전송된 카탈로그는 에이전트(44)가 콘텐트 아이템을 페치해야 하는 위치(예를 들어, URL 또는 URI)를 가리킨다.
일부 실시예에서, 유닛(68)으로부터 에이전트(44)로 전송된 카탈로그는 각각의 콘텐트 아이템에 대한 각각의 가능성 스코어를 규정할 수 있다. 높은 가능성 스코어를 갖는 아이템은 고비용에서도 (예를 들어, 느린 셀룰러 접속에도 불구하고) 에이전트(44)에 의해 프리페치될 수 있고 보다 낮은 가능성 스코어를 갖는 아이템은 보다 낮은 비용에서만 (예를 들어, 무료 고속 와이파이 접속이 유용할 때) 프리페치될 수 있다.
일부 실시예에서, 유닛(68)으로부터 에이전트(44)로 전송된 카탈로그는 에이전트(44)에 의해 프리페치될 콘텐트 아이템의 정확도를 인증하기 위한 수단을 포함하고 있다. 이러한 수단은 예를 들어, Cyclic Redundancy Check (CRC) 값, Message Digest 5 (MD5) 해시값 또는 다른 에러 검출 코드와 같은, 정확한 콘텐트 아이템에 계산되는 시그너처를 포함할 수 있다. 이러한 실시예에서, 콘텐트 아이템을 프리페치한 후에, 에이전트(44)는 프리페치된 아이템에 대한 시그너처를 계산하고, 카탈로그의 시그너처와 비교하고, 2개의 시그너처가 일치하는 경우에만 이러한 프리페치된 아이템을 캐시(48)에 저장한다. 이러한 기술은 예를 들어, 프리페칭 서비스에 대한 다양한 공격을 완화하고 일반적으로 오류의 프리페칭을 완화하는데 유용하다.
상기 예에서, 주어진 콘텐트의 보장된 프리페칭은 선택된 시각 간격에 한정된다. 추가로, 하나의 실시예에서, 시스템(20)은 특정 콘텐트를 연속 개런티 프리페칭을 허가한 것으로 규정할 수 있다. 시스템(20)은 보통, 현재 시간이 선택된 시각 간격 안에 또는 밖에 있는지 여부에 관계없이, 이러한 특정 콘텐트를 개런티 프리페칭 모드를 사용하여 무조건 프리페치할 것이다.
콘텐트 제공 유닛(68)은 콘텐트 소스(24)로부터 검색된 콘텐트를 다양한 방법으로 공급한 다음 단말기(28)에 전달한다. 예를 들어, 유닛(68)은 통신 대역폭을 줄이기 위해 이러한 콘텐트를 압축할 수 있다. 임의의 적절한 압축 방식이 이러한 목적을 위해 사용될 수 있다. 하나의 실시예에서, 유닛(68)은 단말기에 이미 캐시된 콘텐트에 대해 차이만을 전송하거나, 그렇지 않으면 이전에 캐시된 콘텐트에 대해 이러한 콘텐트를 압축할 수 있다.
다른 예로서, 유닛(68)은 콘텐트의 전달 또는 단말기에서의 소비를 돕는 방식으로 콘텐트를 조작할 수 있다. 예를 들어, 콘텐트가 클라이언트측 스크립트(예를 들어, HTML 페이지에 내장된 JavaScript 스크립트)를 포함하는 경우에, 유닛(68)은 이러한 클라이언트측 스크립트를 실행하고, 이러한 스크립트에 의해 접근된 임의의 추가 콘텐트를 페치하고, 이에 따라 이러한 HTML 페이지를 수정할 수 있다. 즉, 유닛(68)은 원래 클라이언트측 스크립트를 포함한 콘텐트 아이템을 단말기(28)에 전달하고, 이러한 스크립트가 사실 유닛(68)에 의해 네트워크측에서 실행됨에도 불구하고, 의도한 대로 클라이언트측에서 실행된 것처럼 사용자에게 보일 수 있다.
다른 실시예에서, 유닛(68)은 이러한 콘텐트 아이템을 암호화한 후에 에이전트(44)에 전송하고, 에이전트(44)는 수신된 콘텐트 아이템을 해독한다. 암호화는 예를 들어, 프리페칭 서비스에 대한 공격을 완화하고 저작권 보호를 강화하기 위해 유용하다.
다른 실시예에서, 유닛(68)은 다수의 단말기(28)로의 효과적인 전송을 위해 콘텐트 아이템을 조작할 수 있다. 예를 들어, 유닛(68)은 콘텐트 아이템을 공통부(예를 들어, 포털의 모든 사용자에 의해 소비되는 피드(feed))와 사용자 특정 파트(예를 들어, 사용자의 일부 집합만이 관심을 가질 수 있는 기사)로 콘텐트 아이템을 분할할 수 있다. 그다음, 유닛(68)은 이러한 공통부를 각각의 사용자에게 별개로 전송하지 않고, 방송 채널을 통해 다수의 사용자에게 전송할 수 있다. 방송 채널의 예는 Long-Term Evolution (LTE) 셀룰러 규격의 evolved Multimedia Broadcast Multicast Service (eMBMS) 채널을 포함할 수 있다.
일부 실시예에서, 에이전트(44)는 단말기(28)가 비활성, 예를 들어, 아이들 상태일 때, 또는 에이전트가 내장된 애플리케이션이 비활성일 때 작동할 수 있다. 예를 들어, 에이전트(44)는 단말기(28)의 적어도 일부를 때로 깨우고, 프리페칭 및/또는 측정을 실행하고 다시 아이들 상태로 전환할 수 있는데, 이러한 모두는 사용자에게 투명하게 실행될 수 있다. 하나의 실시예에서, 에이전트(44)는 전력 소비량을 줄이기 위해, 기상 간의 적어도 일부를 단말기의 운영 체계의 것과 조정하기를 시도한다.
유닛(68)으로부터 오래된 캐시 콘텐트 아이템을 나타내는 통지를 수신할 때, 에이전트(44) 및 유닛(68)은 이러한 콘텐트 아이템의 갱신된 버전을 프리페치하기 위한 임의의 적절한 프리페칭 정책을 적용할 수 있다. 일부 실시예에서, 갱신된 콘텐트 아이템은 이러한 통지와 함께 (또는 대신에) 전송될 수 있다. 이러한 정책은 작은 콘텐트 아이템(또는 예를 들어, 상이한 압축이 사용될 때 콘텐트 아이템의 작은 차이)에 대해 유익할 수 있다. 큰 콘텐트 아이템에 대해서는, 먼저 이러한 통지를 전송하고, (예를 들어, 적절한 네트워크 타입 또는 상태 또는 디바이스 리소스가 유용할 때) 프리페칭을 위한 선호 시간을 선택하는데 있어 에이전트(44)에게 일부 융통성을 허락하는 것이 바람직할 수 있다. 프리페칭 정책은 보통 단말기 특정되어 있다.
하나의 실시예에서, 유닛(52)은 단말기 특정 프리페칭 정책을 생성하여 (예를 들어, 가끔 또는 주기적으로) 에이전트(44)에 전송할 책임이 있다. 이러한 정책은 예를 들어, 에이전트(44)에 의해 전송된 사용 패턴 및 다른 정보로부터 유도되는 바와 같은 사용자(32), 단말기(28) 및 네트워크(40)의 행동에 기초하여, 규정될 수 있다. 추가로 또는 대안으로, 이러한 정책은 크롤러(64)에 의해 학습되고 기록되는 바와 같이, 콘텐트 소스(24)의 행동에 기초하여 규정될 수 있다. 콘텐트-소스 행동은 예를 들어, 콘텐트에 대한 변화의 패턴, 변화의 크기 및 다른 요인과 관련될 수 있다.
추가로 또는 대안으로, 유닛(52)은 사용자 경험 향상시키기, 통신 비용 줄이기 또는 전력 소비량 줄이기와 같은 기준에 따라 프리페칭 정책을 규정할 수 있다. 예를 들어, 유닛(52)은 단말기가 와이파이에 접속되는 (그래서 저비용에 높은 대역폭을 갖는) 시간에, 또는 채널 및 네트워크 상태가 좋은 (따라서 높은 데이터 속도 및 낮은 에너지 소비량으로 전송될 수 있는) 시간에 개런티-프리페치 시각 간격을 설정하는데 우선순위를 부여할 수 있다. 추가로 또는 대안으로, 콘텐트가 2개 이상의 콘텐트 소스(예를 들어, 상이한 CDN)로부터 프리페치하는데 유용할 때, 유닛(52)은 대안의 소스중에 최저 비용 소스를 선택할 수 있다. 이러한 최저 비용 콘텐트 소스는 물론 높은 지연시간 소스일 수 있지만, 이러한 사실은 보통 프리페칭을 사용할 때 사용자 경험에 영향을 주지 않는다.
일부 실시예에서, 크롤러(64)는 생략될 수 있다. 예를 들어, 일부 실시예에서, 콘텐트 소스가 시스템(20)(예를 들어, 유닛(52) 및/또는 서브시스템(56))에 콘텐트 변경의 확실한 통지를 제공한다. 이러한 경우에, 이러한 통지는 콘텐트 소스를 크롤링할 필요 없이 프리페칭을 직접 트리거할 수 있다. 다른 예로서, 데이터 소스는 RSS 피드(feed)를 생성할 수 있는데, 이러한 경우에 RSS 피드는 콘텐트 아이템 자체 대신에 감시될 수 있다. 또 다른 예로서, 콘텐트 소스는 콘텐트 또는 피드의 상태의 인덱스(예를 들어, XML 파일)를 보유할 수 있다. 이러한 콘텐트 소스는 인덱스에 대한 변화를 시스템(20)에 통지하여, 크롤링에 대한 필요를 제거한다. 추가로 또는 대안으로, 시스템(20)은 콘텐트 변화의 임의의 다른 적절한 표시에 대한 프리페칭을 트리거할 수 있다.
위의 도 1의 설명에서, 크롤러(64)는 콘텐트 아이템의 갱신 버전을 검색하고 콘텐트 제공 유닛(68)에 전달한다. 대안의 실시예에서, 크롤러는 실제 콘텐트 대신에, 변경된 콘텐트 아이템의 위치를 가리키는 포인터(예를 들어, 인터넷 식별자 - URI)를 전달할 수 있다. 유닛(68)은 이러한 포인터를 사용하여 갱신 콘텐트 아이템을 검색하는, 단말기(28)의 에이전트(44)에 이러한 포인터를 전달한다.
일부 실시예에서, 크롤러(64)는 데이터 소스(또는 피드)의 메인 페이지만을 크롤링한다. 대안의 실시예에서, 크롤러(64)는 내부, 하위 레벨 페이지 역시 크롤링한다. 크롤링 깊이 역시 프리페칭 정책의 일부로서 유닛(52)에 의해 특정될 수 있다.
프리페칭 서브시스템(56)은 콘텐트 아이템이 갱신되었다는 신호를 에이전트(44)에 보내기 위한 임의의 적절한 기술을 사용할 수 있다. 예를 들어, 각각의 콘텐트 아이템에는, 콘텐트가 갱신될 때 증가되는 버전 넘버가 할당될 수 있다. 콘텐트 소스의 버전 넘버가 단말기(28)의 캐시(48)의 버전 넘버 보다 새로운 콘텐트 아이템은 오래된 것으로 간주될 수 있다. 프리페칭 서브시스템(56)은 데이터 완전성을 유지하면서 구버전과 신버전 사이의 차이만을 전송하기 위한 버전 넘버를 사용할 수 있다.
실시예에서, 유닛(68)은 고속으로 정규적으로 갱신되는 콘텐트 아이템(예를 들어, 진행중인 스포츠 이벤트와 관련된 콘텐트)를 식별할 수 있고, 이들을 "논-버전"으로 마크할 수 있다. 이러한 실시예에서, 에이전트(44)는 다른 콘텐트 아이템을 페치할 때마다 논-버전 콘텐트 아이템을 프리페치할 것이지만, 그렇지 않으면, 프리페치하지 않을 것이거나, 대안으로, 이러한 아이템을 함께 프리페치하는 것을 피하고 이들을 캐시로부터 삭제할 것이다. 일단 주어진 논-버전 콘텐트 아이템의 빈번한 변화가 중단되면, 유닛(68)은 다시 버전 넘버를 이러한 콘텐트 아이템에 할당할 수 있고, 이에 따라 처리할 수 있다. 논-버전 데이터 아이템을 소비하는 애플리케이션의 기동 동안, 에이전트(44)는 무선망이 유용한 경우에 이들을 콘텐트 소스로부터 실시간으로 페치할 것이다. 그렇지 않다면, 최신 캐시된 카피가 제공될 것이다.
여기에 기술된 실시예는 무선 단말기를 위한 콘텐트 프리페칭을 주로 다루고 있지만, 여기에 기술된 방법 및 시스템은 인터넷에 유선 접속하는 퍼스널 컴퓨터와 같은 유선 단말기를 위한 프리페칭과 같은 다른 적용에도 사용될 수 있다.
여기에 기술된 실시예가 주로 웹사이트로부터의 프리페칭에 관한 것이지만, 개시된 기술은 또한 다양한 중간 엔티티로부터 콘텐트를 프리페치하는데 사용될 수 있다. 여기에 콘텐트 소스의 타입으로서 간주된 이러한 중간 엔티티는 예를 들어, 콘텐트 아이템을 갖는 다른 모바일 디바이스, 컴퓨터 서버, 프록시 캐시, 또는 임의의 다른 적절한 엔티티를 포함할 수 있다. 이러한 중간 엔티티가 다른 모바일 디바이스를 포함할 때, 콘텐트는 직접 디바이스간 무선 링크를 사용하여 페치될 수 있다.
따라서, 상술된 실시예는 예로서 언급되어 있고 본 발명은 여기에 도시되고 설명된 것에 제한되지 않는 것을 이해할 것이다. 오히려, 본 발명의 범위는 상기 설명을 읽을 때 당업자에게 가능하고 종래기술에 개시되지 않은 변형 및 수정은 물론, 상술된 다양한 특징의 조합 및 하위 조합 모두를 포함하고 있다. 본 특허 출원에 언급되어 통합된 문서는 임의의 용어가 본 발명에 규정된 정의와 충돌하는 방식으로 이러한 통합된 문서에 규정되면 본 명세서의 규정이 고려되어야 한다는 것을 제외하면 본 출원에 통합된 것으로 생각해야 한다.

Claims (25)

  1. 콘텐트 전달 방법에 있어서,
    콘텐트가 콘텐트 소스로부터 사용자의 통신 단말기로 연속 프리페치되어 상기 통신 단말기를 상기 콘텐트 소스와 동기화된 상태로 유지하는 개런티 프리페칭 모드를 규정하는 단계;
    상기 콘텐트 소스에서 콘텐트 변화의 시간 패턴을 감시하는 단계;
    상기 콘텐트 변화의 패턴에 기초하여 상기 사용자가 주어진 콘텐트에 접근할 것으로 예상되는 하나 이상의 시각 간격을 식별하는 단계; 및
    상기 식별된 시각 간격 동안, 상기 개런티 프리페칭 모드를 사용하여 상기 콘텐트 소스로부터 상기 통신 단말기로 상기 주어진 콘텐트를 프리페치하는 단계를 포함하는 것을 특징으로 하는 콘텐트 전달 방법.
  2. 제1항에 있어서, 상기 개런티 프리페칭 모드와 상이한 최선 노력 프리페칭 모드를 규정하는 단계, 및 상기 식별된 시각 간격 밖에서 상기 최선 노력 프리페칭 모드를 사용하여 상기 주어진 콘텐트를 상기 통신 단말기에 프리페치하는 단계를 더 포함하는 것을 특징으로 하는 콘텐트 전달 방법.
  3. 제2항에 있어서, 상기 개런티 프리페칭 모드를 사용하여 프리페치하는 단계는 변경된 것으로 검출되는 콘텐트 아이템의 임계 백분율 보다 적게 프리페치하는 단계를 포함하고, 상기 최선 노력 프리페칭 모드를 사용하여 프리페치하는 단계는 변경된 것으로 검출된 콘텐트 아이템의 임계 백분율 보다 많이 프리페치하는 단계를 포함하는 것을 특징으로 하는 콘텐트 전달 방법.
  4. 제1항 또는 제2항에 있어서, 상기 개런티 프리페칭 모드를 사용하여 상기 주어진 콘텐트를 프리페치하는 단계는 상기 식별된 시각 간격 동안 연속으로 상기 주어진 콘텐트의 변화를 검출하는 단계, 및 상기 변화 또는 상기 변화된 콘텐트를 상기 통신 단말기에 프리페치하는 단계를 포함하는 것을 특징으로 하는 콘텐트 전달 방법.
  5. 제4항에 있어서, 상기 변화를 검출하는 단계는 상기 콘텐트 소스에서 상기 콘텐트 아이템을 연속으로 크롤링하는 단계를 포함하는 것을 특징으로 하는 콘텐트 전달 방법.
  6. 제4항에 있어서, 상기 변화를 검출하는 단계는 상기 변화를 나타내는 통지를 상기 콘텐트 소스로부터 수신하는 단계를 포함하는 것을 특징으로 하는 콘텐트 전달 방법.
  7. 제1항 또는 제2항에 있어서, 상기 시각 간격을 식별하는 단계는 상기 통신 단말기에 설치된 소프트웨어 에이전트에 의해 상기 통신 단말기의 사용 패턴을 감시하는 단계, 및 상기 사용 패턴에 기초하여 상기 시각 간격을 식별하는 단계를 포함하는 것을 특징으로 하는 콘텐트 전달 방법.
  8. 제1항 또는 제2항에 있어서, 콘텐트 아이템의 순시 특징에 응답하여 상기 개런티 프리페칭 모드를 사용하여 상기 콘텐트 아이템을 프리페치하도록 결정하는 단계를 포함하는 것을 특징으로 하는 콘텐트 전달 방법.
  9. 제1항 또는 제2항에 있어서, 상기 주어진 콘텐트를 프리페치하는 단계는 프리페치할 하나 이상의 후보 콘텐트 아이템을 상기 통신 단말기에 나타내는 단계, 상기 후보 콘텐트 아이템중 하나 이상을 상기 통신 단말기에 의해 선택하는 단계, 및 상기 선택된 콘텐트 아이템을 상기 통신 단말기에 의해 프리페치하는 단계를 포함하는 것을 특징으로 하는 콘텐트 전달 방법.
  10. 제1항에 또는 제2항에 있어서, 상기 주어진 콘텐트를 프리페치하는 단계는 프리페치될 콘텐트 아이템의 제1 시그너처를 상기 통신 단말기에 나타내는 단계, 상기 콘텐트 아이템을 상기 통신 단말기에 의해 프리페치하는 단계, 상기 프리페치된 콘텐트 아이템에 대해 제2 시그너처를 계산하는 단계, 및 상기 제1 시그너처가 상기 제2 시그너처와 일치하는 경우에만 상기 콘텐트 아이템을 상기 통신 단말기에 캐시하는 단계를 포함하는 것을 특징으로 하는 콘텐트 전달 방법.
  11. 제1항 또는 제2항에 있어서, 프리페치되는 것으로 사용자에게 제공된 하나 이상의 콘텐트 아이템을 시각적으로 마크하는 단계를 포함하는 것을 특징으로 하는 콘텐트 전달 방법.
  12. 콘텐트 전달 시스템에 있어서,
    콘텐트 소스 및 사용자의 통신 단말기와 통신하기 위한 인터페이스; 및
    콘텐트가 콘텐트 소스로부터 사용자의 통신 단말기로 연속 프리페치되어 상기 통신 단말기를 상기 콘텐트 소스와 동기화된 상태로 유지하는, 개런티 프리페칭 모드의 규정을 유지하고, 상기 콘텐트 소스에서 콘텐트 변화의 시간 패턴을 감시하고, 상기 콘텐트 변화의 패턴에 기초하여 상기 사용자가 주어진 콘텐트에 접근할 것으로 예상되는 하나 이상의 시각 간격을 식별하고, 상기 식별된 시각 간격 동안, 상기 개런티 프리페칭 모드를 사용하여 상기 콘텐트 소스로부터 상기 통신 단말기로 상기 주어진 콘텐트를 프리페치하도록 구성된 하나 이상의 프로세서를 포함하는 것을 특징으로 하는 콘텐트 전달 시스템.
  13. 제12항에 있어서, 상기 하나 이상의 프로세서는 또한 상기 개런티 프리페칭 모드와 상이한 최선 노력 프리페칭 모드의 규정을 유지하도록, 그리고 상기 식별된 시각 간격 밖에서 상기 최선 노력 프리페칭 모드를 사용하여 상기 주어진 콘텐트를 상기 통신 단말기에 프리페치하도록 구성되어 있는 것을 특징으로 하는 콘텐트 전달 시스템.
  14. 제13항에 있어서, 상기 하나 이상의 프로세서는 상기 개런티 프리페칭 모드를 사용할 때 변경된 것으로 검출되는 콘텐트 아이템의 임계 백분율 보다 적게 프리페치하도록, 상기 최선 노력 프리페칭 모드를 사용할 때 변경된 것으로 검출된 콘텐트 아이템의 임계 백분율 보다 많이 프리페치하도록 구성되어 있는 것을 특징으로 하는 콘텐트 전달 시스템.
  15. 제12항 또는 제13항에 있어서, 상기 하나 이상의 프로세서는 상기 식별된 시각 간격 동안 연속으로 상기 주어진 콘텐트의 변화를 검출하도록, 그리고 상기 변화 또는 상기 변화된 콘텐트를 상기 통신 단말기에 프리페치하도록 구성되어 있는 것을 특징으로 하는 콘텐트 전달 시스템.
  16. 제15항에 있어서, 상기 하나 이상의 프로세서는 상기 콘텐트 소스에서 상기 콘텐트 아이템을 연속으로 크롤링함으로써 상기 변화를 검출하도록 구성되어 있는 것을 특징으로 하는 콘텐트 전달 시스템.
  17. 제15항에 있어서, 상기 하나 이상의 프로세서는 상기 변화를 나타내는 통지를 상기 콘텐트 소스로부터 수신함으로써 상기 변화를 검출하도록 구성되어 있는 것을 특징으로 하는 콘텐트 전달 시스템.
  18. 제12항 또는 제13항에 있어서, 상기 통신 단말기에 설치되어 있고, 상기 통신 단말기의 사용 패턴을 감시하도록 구성되어 있는 소프트웨어 에이전트를 포함하고, 상기 하나 이상의 프로세서는 상기 사용 패턴에 기초하여 상기 시각 간격을 식별하하도록 구성되어 있는 것을 특징으로 하는 콘텐트 전달 시스템.
  19. 제12항 또는 제13항에 있어서, 상기 하나 이상의 프로세서는 콘텐트 아이템의 순시 특징에 응답하여 상기 개런티 프리페칭 모드를 사용하여 상기 콘텐트 아이템을 프리페치하도록 결정하도록 구성되어 있는 것을 특징으로 하는 콘텐트 전달 시스템.
  20. 제12항 또는 제13항에 있어서, 상기 하나 이상의 프로세서는 프리페치할 하나 이상의 후보 콘텐트 아이템을 상기 통신 단말기에 나타내도록 구성되어 있고, 상기 시스템은 상기 통신 단말기에 설치되어 있고, 상기 후보 콘텐트 아이템중 하나 이상을 선택하도록 그리고 상기 선택된 콘텐트 아이템을 프리페치하도록 구성되어 있는 소프트웨어 에이전트를 포함하는 것을 특징으로 하는 콘텐트 전달 시스템.
  21. 제12항에 또는 제13항에 있어서, 상기 하나 이상의 프로세서는 프리페치될 콘텐트 아이템의 제1 시그너처를 상기 통신 단말기에 나타내도록 구성되어 있고, 상기 시스템은 상기 통신 단말기에 설치되어 있고, 상기 콘텐트 아이템을 프리페치하도록, 상기 프리페치된 콘텐트 아이템에 대해 제2 시그너처를 계산하도록, 그리고 상기 제1 시그너처가 상기 제2 시그너처와 일치하는 경우에만 상기 콘텐트 아이템을 캐시하도록 구성되어 있는 소프트웨어 에이전트를 포함하는 것을 특징으로 하는 콘텐트 전달 시스템.
  22. 제12항 또는 제13항에 있어서, 상기 통신 단말기에 설치되어 있고, 프리페치되는 것으로 사용자에게 제공된 하나 이상의 콘텐트 아이템을 시각적으로 마크하도록 구성되어 있는 소프트웨어 에이전트를 포함하는 것을 특징으로 하는 콘텐트 전달 시스템.
  23. 유형 비임시 컴퓨터 판독가능 매체에 저장된 명령어를 포함하는 컴퓨터 프로그램에 있어서, 상기 명령어는 콘텐트 소스 및 사용자의 통신 단말기와 통신하는 콘텐트 전달 시스템의 하나 이상의 프로세서에 의해 판독될 때, 상기 하나 이상의 프로세서가, 콘텐트가 콘텐트 소스로부터 사용자의 통신 단말기로 연속 프리페치되어 상기 통신 단말기를 상기 콘텐트 소스와 동기화된 상태로 유지하는, 개런티 프리페칭 모드의 규정을 유지하도록 하고, 상기 사용자가 주어진 콘텍트에 접근할 것으로 예상되는 하나 이상의 시각 간격을 자동으로 식별하도록 하고, 상기 식별된 시각 간격 동안, 상기 개런티 프리페칭 모드를 사용하여 상기 콘텐트 소스로부터 상기 통신 단말기로 상기 주어진 콘텐트를 프리페치하도록 하는 것을 특징으로 하는 컴퓨터 프로그램.
  24. 삭제
  25. 삭제
KR1020177002520A 2014-07-16 2015-04-20 선택된 시각에서 개런티 프리페칭을 사용하는 무선 네트워크를 통한 효과적인 콘텐트 전달 KR102260177B1 (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201462025021P 2014-07-16 2014-07-16
US62/025,021 2014-07-16
US201562100933P 2015-01-08 2015-01-08
US62/100,933 2015-01-08
PCT/IB2015/052873 WO2016009285A1 (en) 2014-07-16 2015-04-20 Efficient content delivery over wireless networks using guaranteed prefetching at selected times-of-day

Publications (2)

Publication Number Publication Date
KR20170031702A KR20170031702A (ko) 2017-03-21
KR102260177B1 true KR102260177B1 (ko) 2021-06-04

Family

ID=55075605

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177002520A KR102260177B1 (ko) 2014-07-16 2015-04-20 선택된 시각에서 개런티 프리페칭을 사용하는 무선 네트워크를 통한 효과적인 콘텐트 전달

Country Status (5)

Country Link
US (1) US9961159B2 (ko)
EP (1) EP3170335B1 (ko)
KR (1) KR102260177B1 (ko)
CN (1) CN106664592B (ko)
WO (1) WO2016009285A1 (ko)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9979796B1 (en) 2014-07-16 2018-05-22 Tensera Networks Ltd. Efficient pre-fetching notifications
US11095743B2 (en) 2014-07-16 2021-08-17 Tensera Networks Ltd. Optimized content-delivery network (CDN) for the wireless last mile
CN106155764A (zh) 2015-04-23 2016-11-23 阿里巴巴集团控股有限公司 调度虚拟机输入输出资源的方法及装置
CN106201839B (zh) 2015-04-30 2020-02-14 阿里巴巴集团控股有限公司 一种业务对象的信息加载方法和装置
US9723470B1 (en) 2015-04-30 2017-08-01 Tensera Networks Ltd. Selective enabling of data services to roaming wireless terminals
CN106209741B (zh) 2015-05-06 2020-01-03 阿里巴巴集团控股有限公司 一种虚拟主机及隔离方法、资源访问请求处理方法及装置
CN106708819A (zh) 2015-07-17 2017-05-24 阿里巴巴集团控股有限公司 一种数据缓存的预热方法及其装置
CN106487708B (zh) 2015-08-25 2020-03-13 阿里巴巴集团控股有限公司 网络访问请求控制方法和装置
CN106547582A (zh) * 2015-09-22 2017-03-29 阿里巴巴集团控股有限公司 一种预处理方法及装置
WO2017064586A1 (en) 2015-10-15 2017-04-20 Tensera Networks Ltd. Freshness-aware presentation of content in communication terminals
US10574775B2 (en) * 2015-12-10 2020-02-25 Facebook, Inc. Systems and methods to optimize news feed access
WO2017190180A1 (en) * 2016-05-06 2017-11-09 Telstra Corporation Limited Data delivery via a communications network
US20190132386A1 (en) * 2016-06-05 2019-05-02 Tensera Networks Ltd. User-Device Based E-Commerce Server
EP3488591A1 (en) * 2016-07-25 2019-05-29 Telefonaktiebolaget LM Ericsson (publ) Content delivery network (cdn) for uploading, caching and delivering user content
WO2018234967A1 (en) * 2017-06-19 2018-12-27 Tensera Networks Ltd. SILENT CONTENT UPDATE IN USER DEVICES
US20180364871A1 (en) * 2017-06-20 2018-12-20 International Business Machines Corporation Automatic cognitive adjustment of display content
US11397555B2 (en) 2017-10-26 2022-07-26 Tensera Networks Ltd. Background pre-loading and refreshing of applications with audio inhibition
WO2019171237A1 (en) 2018-03-05 2019-09-12 Tensera Networks Ltd. Application preloading in the presence of user actions
US11922187B2 (en) 2018-03-05 2024-03-05 Tensera Networks Ltd. Robust application preloading with accurate user experience
US20190306265A1 (en) * 2018-04-02 2019-10-03 Telefonaktiebolaget L M Ericsson (Publ) Group enhanced content delivery
US10897529B2 (en) 2019-05-06 2021-01-19 Google Llc Proactive caching of transient assistant action suggestions at a feature phone
CN114144777A (zh) 2019-07-30 2022-03-04 腾赛拉网络有限公司 用户设备中应用用户界面的预渲染
CN116670646A (zh) 2020-12-03 2023-08-29 腾赛拉网络有限公司 预加载具有现有任务的应用

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030101234A1 (en) * 2001-11-28 2003-05-29 International Business Machines Corporation System and method for indicating whether a document is cached
US20120023226A1 (en) * 2010-07-26 2012-01-26 Steve Petersen Prediction of activity session for mobile network use optimization and user experience enhancement
US20130031204A1 (en) * 2011-07-28 2013-01-31 Graham Christoph J Systems and methods of accelerating delivery of remote content

Family Cites Families (87)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6311223B1 (en) 1997-11-03 2001-10-30 International Business Machines Corporation Effective transmission of documents in hypertext markup language (HTML)
US6446238B1 (en) * 1999-05-21 2002-09-03 International Business Machines Corporation System and method for updating microcode stored in a non-volatile memory
US20020198991A1 (en) * 2001-06-21 2002-12-26 International Business Machines Corporation Intelligent caching and network management based on location and resource anticipation
US6766422B2 (en) * 2001-09-27 2004-07-20 Siemens Information And Communication Networks, Inc. Method and system for web caching based on predictive usage
US7437438B2 (en) 2001-12-27 2008-10-14 Hewlett-Packard Development Company, L.P. System and method for energy efficient data prefetching
US8516114B2 (en) * 2002-03-29 2013-08-20 International Business Machines Corporation Method and apparatus for content pre-fetching and preparation
US6868439B2 (en) * 2002-04-04 2005-03-15 Hewlett-Packard Development Company, L.P. System and method for supervising use of shared storage by multiple caching servers physically connected through a switching router to said shared storage via a robust high speed connection
US8195761B2 (en) * 2004-01-13 2012-06-05 International Business Machines Corporation Prefetching web resources based on proxy triggers
US7483941B2 (en) 2004-01-13 2009-01-27 International Business Machines Corporation System and method for dynamically inserting prefetch tags by the web server
US7814195B2 (en) * 2004-09-10 2010-10-12 Sony Corporation Method for data synchronization with mobile wireless devices
US8732610B2 (en) 2004-11-10 2014-05-20 Bt Web Solutions, Llc Method and apparatus for enhanced browsing, using icons to indicate status of content and/or content retrieval
US8732234B2 (en) * 2005-06-07 2014-05-20 Yahoo! Inc. Providing relevant non-requested content to a mobile device
US20070067698A1 (en) * 2005-09-19 2007-03-22 King Steven R Techniques to perform prefetching of content in connection with integrity validation value determination
WO2007070056A1 (en) 2005-12-15 2007-06-21 Thomson Licensing An adaptive joint source and channel coding scheme for h.264 video multicasting over wireless networks
US8447837B2 (en) 2005-12-30 2013-05-21 Akamai Technologies, Inc. Site acceleration with content prefetching enabled through customer-specific configurations
US8701010B2 (en) * 2007-03-12 2014-04-15 Citrix Systems, Inc. Systems and methods of using the refresh button to determine freshness policy
US20080253693A1 (en) * 2007-04-10 2008-10-16 Chu Jeff I Method and system for pre-fetching relevant imaging information from multiple healthcare organizations
US20080301300A1 (en) 2007-06-01 2008-12-04 Microsoft Corporation Predictive asynchronous web pre-fetch
US8171135B2 (en) 2007-07-12 2012-05-01 Viasat, Inc. Accumulator for prefetch abort
US9521186B2 (en) 2007-09-13 2016-12-13 International Business Machines Corporation Method and system for file transfer over a messaging infrastructure
US8825758B2 (en) 2007-12-14 2014-09-02 Microsoft Corporation Collaborative authoring modes
EP2314005B1 (en) 2008-04-29 2017-11-29 Thomson Licensing A method and system for adapting forward error correction in multicast over wireless networks
US8028081B2 (en) 2008-05-23 2011-09-27 Porto Technology, Llc System and method for adaptive segment prefetching of streaming media
US9336178B2 (en) 2008-12-19 2016-05-10 Velocee Ltd. Optimizing content and communication in multiaccess mobile device exhibiting communication functionalities responsive of tempo spatial parameters
US8312223B2 (en) * 2008-12-23 2012-11-13 International Business Machines Corporation Pre-fetching virtual environment in a virtual universe based on previous traversals
CN101807180B (zh) * 2009-02-16 2013-06-19 宏达国际电子股份有限公司 移动电子装置及其网页的预处理及显示方法
US20110029670A1 (en) 2009-07-31 2011-02-03 Microsoft Corporation Adapting pushed content delivery based on predictiveness
US8655404B1 (en) 2009-11-11 2014-02-18 Gurminder Singh Systems and methods for distributing content with a portable electronic device
US8625667B2 (en) 2009-11-30 2014-01-07 Alcatel Lucent Method of opportunity-based transmission of wireless video
US20110246618A1 (en) 2010-04-02 2011-10-06 Apple Inc. Caching multiple views corresponding to multiple aspect ratios
EP3367252B1 (en) 2010-07-26 2019-10-16 Seven Networks, LLC Context aware traffic management for resource conservation in a wireless network
GB2497012B (en) 2010-07-26 2013-10-30 Seven Networks Inc Mobile network traffic coordination across multiple applications
WO2013015835A1 (en) 2011-07-22 2013-01-31 Seven Networks, Inc. Mobile application traffic optimization
EP2599280A2 (en) 2010-07-26 2013-06-05 Seven Networks, Inc. Mobile application traffic optimization
US9009414B2 (en) 2010-09-21 2015-04-14 Texas Instruments Incorporated Prefetch address hit prediction to reduce memory access latency
US8601052B2 (en) 2010-10-04 2013-12-03 Qualcomm Incorporated System and method of performing domain name server pre-fetching
US9060032B2 (en) * 2010-11-01 2015-06-16 Seven Networks, Inc. Selective data compression by a distributed traffic management system to reduce mobile data traffic and signaling traffic
CN102480513B (zh) 2010-11-29 2014-09-10 国际商业机器公司 在社交网络中辅助传递更新内容的装置和方法
US9154826B2 (en) 2011-04-06 2015-10-06 Headwater Partners Ii Llc Distributing content and service launch objects to mobile devices
US8621075B2 (en) 2011-04-27 2013-12-31 Seven Metworks, Inc. Detecting and preserving state for satisfying application requests in a distributed proxy and cache system
US20160004410A1 (en) 2011-06-27 2016-01-07 Google Inc. Processing Cursor Movements for Predictive Fetching
WO2013000059A1 (en) * 2011-06-29 2013-01-03 Rockstar Bidco, LP Method and apparatus for pre-loading information over a communication network
US8612418B2 (en) 2011-07-14 2013-12-17 Google Inc. Mobile web browser for pre-loading web pages
US8880652B2 (en) * 2011-09-14 2014-11-04 Hewlett-Packard Development Company, L.P. Heuristic browser predictive pre-caching
US8341245B1 (en) 2011-09-26 2012-12-25 Google Inc. Content-facilitated speculative preparation and rendering
CN103959798B (zh) 2011-09-30 2018-06-08 英特尔公司 无线网络上的体验质量增强
US9009250B2 (en) 2011-12-07 2015-04-14 Seven Networks, Inc. Flexible and dynamic integration schemas of a traffic management system with various network operators for network traffic alleviation
CN102591963A (zh) * 2011-12-30 2012-07-18 奇智软件(北京)有限公司 网页内容加载控制方法及装置
CN104246757B (zh) 2012-02-22 2018-11-06 诺基亚技术有限公司 预测性服务访问
US8849731B2 (en) 2012-02-23 2014-09-30 Microsoft Corporation Content pre-fetching for computing devices
US8566867B1 (en) 2012-04-03 2013-10-22 Google Inc. Pre-fetch ads while serving ads in live stream
US9661047B2 (en) 2012-04-30 2017-05-23 Mobilatv Ltd. Method and system for central utilization of remotely generated large media data streams despite network bandwidth limitations
CN111405315B (zh) 2012-06-12 2022-04-12 相干逻辑公司 用于编码和交付视频内容的分布式体系结构
EP2868097A4 (en) 2012-06-28 2016-03-23 Ericsson Ab METHOD AND SYSTEM FOR ADVERTISING INSERTION IN OTT (OVER THE TOP) DISTRIBUTION OF LIVE MULTIMEDIA CONTENT
US20140032718A1 (en) 2012-07-24 2014-01-30 Penthera Partners, Inc. Video uploading from mobile devices
US8943197B1 (en) 2012-08-16 2015-01-27 Amazon Technologies, Inc. Automated content update notification
US9215269B2 (en) 2012-08-23 2015-12-15 Amazon Technologies, Inc. Predictive caching for content
US9058324B2 (en) 2012-09-28 2015-06-16 Intel Corporation Predictive precaching of data based on context
US9106721B2 (en) * 2012-10-02 2015-08-11 Nextbit Systems Application state synchronization across multiple devices
US9104843B2 (en) 2013-03-15 2015-08-11 Rhapsody International, Inc. Providing content items from alternate sources
US9558508B2 (en) 2013-03-15 2017-01-31 Microsoft Technology Licensing, Llc Energy-efficient mobile advertising
US9009103B2 (en) 2013-03-15 2015-04-14 Microsoft Technology Licensing, Llc Fingerprint-based, intelligent, content pre-fetching
US9256484B2 (en) 2013-06-09 2016-02-09 Apple Inc. Dynamic adjustment of mobile device based on user activity
US9392393B2 (en) 2013-06-09 2016-07-12 Apple Inc. Push notification initiated background updates
US10223156B2 (en) 2013-06-09 2019-03-05 Apple Inc. Initiating background updates based on user activity
US9603094B2 (en) 2013-06-09 2017-03-21 Apple Inc. Non-waking push notifications
US20140373032A1 (en) 2013-06-12 2014-12-18 Microsoft Corporation Prefetching content for service-connected applications
US9307007B2 (en) 2013-06-14 2016-04-05 Microsoft Technology Licensing, Llc Content pre-render and pre-fetch techniques
US20140379840A1 (en) 2013-06-24 2014-12-25 Akamai Technologies, Inc. Predictive prefetching of web content
US9065765B2 (en) * 2013-07-22 2015-06-23 Seven Networks, Inc. Proxy server associated with a mobile carrier for enhancing mobile traffic management in a mobile network
US9813515B2 (en) 2013-10-04 2017-11-07 Akamai Technologies, Inc. Systems and methods for caching content with notification-based invalidation with extension to clients
US9081789B2 (en) 2013-10-28 2015-07-14 Tealium Inc. System for prefetching digital tags
US9819721B2 (en) 2013-10-31 2017-11-14 Akamai Technologies, Inc. Dynamically populated manifests and manifest-based prefetching
US8938488B1 (en) * 2013-12-27 2015-01-20 Linkedin Corporation Techniques for populating a content stream on a mobile device
US9591095B2 (en) 2014-03-10 2017-03-07 Microsoft Technology Licensing, Llc Prefetching application data for periods of disconnectivity
US10117600B2 (en) 2014-04-15 2018-11-06 Apple Inc. Pacing activity data of a user
US10528872B2 (en) 2014-05-30 2020-01-07 Apple Inc. Methods and system for managing predictive models
US9432796B2 (en) 2014-05-30 2016-08-30 Apple Inc. Dynamic adjustment of mobile device based on peer event data
US9813990B2 (en) 2014-05-30 2017-11-07 Apple Inc. Dynamic adjustment of mobile device based on voter feedback
US9432839B2 (en) 2014-05-30 2016-08-30 Apple Inc. Dynamic adjustment of mobile device based on thermal conditions
US9465679B2 (en) 2014-05-30 2016-10-11 Apple Inc. Dynamic adjustment of mobile device based on adaptive prediction of system events
US9411572B2 (en) 2014-06-09 2016-08-09 Paypal, Inc. Systems and methods for location-based application installation
US9646254B2 (en) * 2014-06-20 2017-05-09 Amazon Technologies, Inc. Predicting next web pages
US10506027B2 (en) * 2014-08-27 2019-12-10 Tensera Networks Ltd. Selecting a content delivery network
US10771583B2 (en) 2014-12-29 2020-09-08 Akamai Technologies, Inc. Managing mobile device user subscription and service preferences to predictively pre-fetch content
US10063653B2 (en) 2014-12-29 2018-08-28 Akamai Technologies, Inc. Distributed server architecture for supporting a predictive content pre-fetching service for mobile device users
US9860336B2 (en) * 2015-10-29 2018-01-02 International Business Machines Corporation Mitigating service disruptions using mobile prefetching based on predicted dead spots

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030101234A1 (en) * 2001-11-28 2003-05-29 International Business Machines Corporation System and method for indicating whether a document is cached
US20120023226A1 (en) * 2010-07-26 2012-01-26 Steve Petersen Prediction of activity session for mobile network use optimization and user experience enhancement
US20130031204A1 (en) * 2011-07-28 2013-01-31 Graham Christoph J Systems and methods of accelerating delivery of remote content

Also Published As

Publication number Publication date
WO2016009285A1 (en) 2016-01-21
US20160021211A1 (en) 2016-01-21
EP3170335A4 (en) 2018-01-10
EP3170335A1 (en) 2017-05-24
CN106664592A (zh) 2017-05-10
EP3170335B1 (en) 2019-12-11
US9961159B2 (en) 2018-05-01
CN106664592B (zh) 2020-08-18
KR20170031702A (ko) 2017-03-21

Similar Documents

Publication Publication Date Title
KR102260177B1 (ko) 선택된 시각에서 개런티 프리페칭을 사용하는 무선 네트워크를 통한 효과적인 콘텐트 전달
US11128729B2 (en) Efficient content delivery over wireless networks using guaranteed prefetching
US11095743B2 (en) Optimized content-delivery network (CDN) for the wireless last mile
CN107251525B (zh) 用于支持移动设备用户的预测内容预取服务的分布式服务器架构
CN106095869B (zh) 广告信息处理方法、用户设备、后台服务器及系统
US10261938B1 (en) Content preloading using predictive models
US9979796B1 (en) Efficient pre-fetching notifications
EP2653987B1 (en) Displaying web pages without downloading static files
US8065275B2 (en) Systems and methods for cache optimization
US20140089467A1 (en) Content stream delivery using pre-loaded segments
US10909104B2 (en) Caching of updated network content portions
US20170111465A1 (en) Freshness-aware presentation of content in communication terminals
US20180241837A1 (en) Efficient Pre-Fetching Notifications
JP2007506296A (ja) モバイルウェブ閲覧用デバイスにコンテンツを提供する方法
US10616314B1 (en) Dynamic source routing for data transfer
KR20160143666A (ko) 다이내믹 캐시 할당 및 네트워크 관리
US20130318197A1 (en) Dynamic selection of resources for compression in a content delivery network
US10506027B2 (en) Selecting a content delivery network
US20200128095A1 (en) Dynamic Edge Cache Content Management
US10999396B2 (en) Apparatus and method for caching data
US9398066B1 (en) Server defenses against use of tainted cache
Ramanujam et al. Marauder: synergized caching and prefetching for low-risk mobile app acceleration
US9674220B2 (en) System and method thereof for optimizing delivery of content over a network
US10706119B1 (en) Content prefetching to user devices based on rendering characteristics
CN110855786A (zh) 针对网络数据请求的处理方法、设备及计算机存储介质

Legal Events

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