KR20160101992A - 개인 맞춤된 캐시 또는 사전렌더링을 이용한 웹 애플리케이션 가속 - Google Patents

개인 맞춤된 캐시 또는 사전렌더링을 이용한 웹 애플리케이션 가속 Download PDF

Info

Publication number
KR20160101992A
KR20160101992A KR1020167019461A KR20167019461A KR20160101992A KR 20160101992 A KR20160101992 A KR 20160101992A KR 1020167019461 A KR1020167019461 A KR 1020167019461A KR 20167019461 A KR20167019461 A KR 20167019461A KR 20160101992 A KR20160101992 A KR 20160101992A
Authority
KR
South Korea
Prior art keywords
user
web page
linked web
pages
page
Prior art date
Application number
KR1020167019461A
Other languages
English (en)
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 KR20160101992A publication Critical patent/KR20160101992A/ko

Links

Images

Classifications

    • 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
    • G06F17/30902
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)

Abstract

유저 브라우징 거동을 예측하기 위한 그리고 개인 맞춤된 프리페칭 전략을 개발하기 위한 시스템 및 방법이 제공된다. 몇몇 실시형태에서, 유저 기기 엔티티는, 유저에 의해 방문되고 있는 페이지로부터 링크되는 웹 페이지를 식별하고, 유저 모델에 기초하여, 링크된 페이지에 대한 프리페치 가중치를 결정한다. 그 다음, 유저 기기는 프리페치 임계치 이상의 가중치를 갖는 웹 페이지를 프리페치한다. 몇몇 실시형태에서, 프리페치 전략은, 분산형 논리 엔티티일 수도 있는 별개의 네트워크 엔티티에 의해 또는 별개의 네트워크 엔티티의 지원으로 생성된다. 정책은 또한, 유저가 전화 통화 중인 동안 프리페칭을 방지하는 것, 또는 비디오를 포함하는 페이지의 프리페칭을 방지하는 것과 같이, 강화될 수도 있다.

Description

개인 맞춤된 캐시 또는 사전렌더링을 이용한 웹 애플리케이션 가속{WEB APPLICATION ACCELERATION WITH PERSONALIZED CACHE OR PRERENDERING}
<관련 출원에 대한 교차 참조>
본 출원은, 참조에 의해 그 전체가 본원에 통합되는 2013년 12월 22일자로 출원된 미국 특허 가출원 제61/919,800호의 가출원이며, 그 가출원으로부터 35 U.S.C. §119(e) 하에서의 이점을 주장한다.
<배경>
웹 애플리케이션을 렌더링하는 데 걸리는 시간의 양은 웹 애플리케이션의 성능의 중요한 척도이다. 웹 애플리케이션에 점점 더 많은 피쳐(feature)가 추가됨에 따라, 짧은 애플리케이션 기동 시간을 달성하는 것이 더 어려워지고 있다. 복잡한 웹 애플리케이션 피쳐는, HTML, 캐스케이드 스타일 시트(Cascaded Style Sheet), 자바스크립트(JavaScript) 코드, 이미지, 오디오, 비디오 및 다른 리소스의 조합으로서 구현된다.
종종 유저는, 주어진 웹 애플리케이션이 너무 느리게 로딩되면, 그 웹 애플리케이션으로부터 이탈할 것이다. 웹 애플리케이션을 로딩할 때 고려되어야 하는 사람이 지각할 수 있는 세가지 시간 한계가 존재한다.
100 ms는, 시스템이 순간적으로 응답하고 있다는 느낌을 유저에게 부여하는 데 필요한 대략적인 응답 시간이다.
1,000 ms는 유저가 정신적 상황 전환(mental context switch)을 가질 한계에 관한 것이다. 유저는 애플리케이션과 직접적으로 상호작용하는 느낌을 잃기 시작한다.
10초는 유저를 대화에 어느 정도 집중하게 유지하는 한계에 관한 것이다. 유저는 응답을 대기하는 동안 다른 태스크의 수행을 시작하기를 원할 것이다. 이 시간 척도(time scale)에서, 애플리케이션이 언제 로딩을 마칠지의 표시를 유저가 제공받는 것이 유익하다.
가장 만족스러운 유저 경험은 100 ms의 응답 시간과 함께 할 것이다. 1초의 응답 시간은, 유저가 애플리케이션을 이탈해서 다른 무언가로 이동할 가능성을 크게 증가시킨다.
평균적인 웹 사이트는 크기가 1.2 MB를 넘으며, 자바스크립트, HTML 및 CSS 파일과 같은 88개의 리소스로 구성되고 15개의 별개의 호스트로부터 전달된다(2013년 1월 상위 300,000개 웹 목적지의 조사에 기초함). 브라우저에 의해 요청되는 리소스의 평균 사이즈는 약 12 KB이다. 이것은, 브라우저로의 네트워크 전송의 대부분이 짧고 급격하다는 것을 의미한다. HTTP에 대한 기저의 전송 메커니즘은 TCP이며, 이것은 큰 페이로드에 대해 최적화된다. 브라우저의 트래픽의 대부분의 짧고 급격한 성질은, 다양한 TCP 동작으로 인해 웹 애플리케이션 로딩 지연의 잠재성을 증가시킨다. 브라우저에서 애플리케이션을 로딩하는 중에 유저가 통상적으로 보게 되는 지연 중 80% 넘게는 네트워크 레이턴시에 기인한다는 것이 추정된다.
리소스의 유니폼 리소스 로케이터(uniform resource locator; URL)가 브라우저에 의해 파싱될 때, 리소스가 로컬하게 캐싱되어 있는지를 살펴 보기 위해, 브라우저는 자신의 로컬 캐시를 먼저 체크한다. 만약 그렇다면, 리소스가 이전에 페치(fetch)되었고 그것이 만료되지 않았다면 브라우저는 캐싱된 리소스를 로딩할 것이다. 캐싱된 리소스의 사용은 애플리케이션 로딩 지연을 크게 감소시킬 것이다.
모바일 브라우저 사용량은 지수적으로 성장하였고 데스크탑 브라우징을 상회한 것으로 사료된다. 그러나, 모바일 브라우저는, 모바일 핸드셋의 사이즈, 전력 및 비용 제약으로 인해, 데스크탑 브라우저보다 훨씬 더 많이 리소스에 제약된다. 예를 들면, 데스크탑 유저는 마우스를 이용하여 내비게이팅하며 대형 스크린 상에 윈도우를 중첩시킬 수 있다. 데스크탑 유저는 통상적으로 전력에 제약되지 않으며; 유저들은 안정적이고 고속의 네트워크 연결에 액세스할 수 있고 더 큰 양의 메모리와 CPU 성능에 액세스할 수 있다. 모바일 유저는 터치 및 제스쳐 기반의 내비게이션에 의존하며, 더 작은 스크린을 가지며, 배터리 및 전력에 제약되고, 일반적으로 덜 강건한 네트워크 연결을 가지며 제한된 로컬 메모리를 갖는다.
많은 애플리케이션은 웹 기반이다. SaaS("Software as a Service"; 서비스로서의 소프트웨어) 및 IaaS("Infrastructure as a Service"; 서비스로서의 인프라)는 비용 효율적이며 유저에게 애플리케이션을 전달하기 위한 생산적 서비스 모델이다. 이들 서비스는 더 많이 인기를 끌고 있으며 많은 개인 및 회사에 대한 주류가 되고 있다.
개인 맞춤된 캐시 활용(personalized cache utilization)을 통해 웹 브라우저 애플리케이션 로딩의 가속화를 가능하게 하기 위한 시스템 및 방법이 본원에서 설명된다. 하나의 실시형태에서, 시스템은 개인 맞춤된 캐시/사전렌더링 매니저(Personalized Cache/Prerendering Manager; PCPM)를 포함한다. PCPM은, 목표로 삼은 그리고 효율적인 정보 관리를 허용하는 유저 모델링 및 다른 특정 정보에 의존하는 캐시 활용을 위한 특수 메커니즘을 통해 개인 맞춤되고 최적화되어 가속화된 그리고 효율적인 웹 브라우저 애플리케이션 로딩을 가능하게 하는 분산형 논리 엔티티일 수도 있다. PCPM은 물리적으로 모바일 디바이스에, 클라우드의 에지에, 및/또는 클라우드 안에 상주할 수 있다. PCPM이 물리적으로 별개의 컴퓨팅 디바이스 상에서 구현되면, 그 별개의 통신 디바이스는, TCP 또는 UDP 소켓과 같은 표준 통신 프로토콜을 사용하여 다른 것과 통신할 수 있다.
개인 맞춤된 캐시/사전 렌더링 매니저(PCPM)는, 유저가 웹 브라우저를 통해 웹을 브라우징하기 위해 컴퓨터 시스템을 활용하고 있을 때 관련될 수도 있다. 시간의 임의의 시점에, 유저가 페이지 상의 오브젝트(예를 들면, 링크)를 클릭하는 것에 의해 페이지와 잠재적으로 상호작용할 수 있는 가시적인 페이지가 존재하는데, 클릭은, 동일한 페이지 상에서 또는 새롭게 디스플레이되는 페이지 상에서 새로운 정보가 디스플레이되게 할 것이다.
첨부의 도면과 연계하여 예로서 제시되는 하기의 설명으로부터, 더 상세한 이해가 얻어질 수도 있다.
도 1a는 하나 이상의 개시된 실시형태가 구현될 수도 있는 예시적인 통신 시스템을 묘사한다.
도 1b는 도 1a의 통신 시스템 내에서 사용될 수도 있는 예시적인 무선 송수신 유닛(wireless transmit/receive unit; WTRU)을 묘사한다.
도 1c는 도 1a의 통신 시스템 내에서 사용될 수도 있는 예시적인 코어 네트워크 및 예시적인 무선 액세스 네트워크(radio access network; RAN)를 묘사한다.
도 1d는 도 1a의 통신 시스템 내에서 사용될 수도 있는 제2 예의 코어 네트워크 및 제2 예의 RAN을 묘사한다.
도 1e는 도 1a의 통신 시스템 내에서 사용될 수도 있는 제3 예의 코어 네트워크 및 제3 예의 RAN을 묘사한다.
도 1f는 도 1a의 통신 시스템 내에서 사용될 수도 있는 예시적인 네트워크 엔티티를 묘사한다.
도 2는 제2 실시형태에 따른 개인 맞춤된 캐시/사전렌더링 매니저를 묘사한다.
도 3은 몇몇 실시형태와 관련되는 모듈의 소프트웨어 아키텍쳐를 묘사한다.
도 4는 몇몇 실시형태에 따른 예측 유저 모델 계약자 모듈(predictive user model contractor module)의 입력 및 출력을 묘사한다.
도 5는 일 실시형태에 따른 유저 기기 엔티티에 의해 수행되는 예시적인 방법을 묘사한다.
도 6은 일 실시형태에 따른 네트워크 엔티티에 의해 수행되는 예시적인 방법을 묘사한다.
도 7은 상이한 캐싱 전략의 경험의 예상 품질을 비교하기 위한 유저 인터페이스를 예시한다.
이제, 예시적인 실시형태의 상세한 설명이 다양한 도면을 참조로 설명될 것이다. 본 설명이 가능한 구현예의 상세한 예를 제공하지만, 제공된 상세는 예로서 의도된 것이며 본 출원의 범위를 어떤 식으로든 제한하도록 의도되지는 않는다는 것을 유의해야 한다.
도 1a는 하나 이상의 개시된 실시형태가 구현될 수도 있는 예시적인 통신 시스템(100)의 도면이다. 통신 시스템(100)은 음성(voice), 데이터, 비디오, 메시징, 브로드캐스트 등등과 같은 컨텐츠를 다수의 무선 유저에게 제공하는 다중 액세스 시스템일 수도 있다. 통신 시스템(100)은, 무선 대역폭을 포함해서, 시스템 리소스의 공유를 통해 다수의 무선 유저가 이러한 컨텐츠에 액세스하는 것을 가능하게 할 수도 있다. 예를 들면, 통신 시스템(100)은, 코드 분할 다중 액세스(code division multiple access; CDMA), 시분할 다중 액세스(time division multiple access; TDMA), 주파수 분할 다중 액세스(frequency division multiple access; FDMA), 직교 FDMA(orthogonal FDMA; OFDMA), 싱글 캐리어 FDMA(single-carrier FDMA; SC-FDMA) 등등과 같은 하나 이상의 채널 액세스 방법을 활용할 수도 있다.
도 1a에서 도시되는 바와 같이, 통신 시스템(100)은 WTRU(102a, 102b, 102c 및/또는 102d)(일반적으로 또는 일괄적으로 WTRU(102)로 칭해질 수도 있음), RAN(103/104/105), 코어 네트워크(106/107/109), 공중 교환 전화망(public switched telephone network; PSTN)(108), 패킷 데이터 네트워크(110), 예컨대 인터넷, 및 기타 네트워크(112)를 포함할 수도 있지만, 개시된 실시형태는 임의의 수의 WTRU, 기지국(base station), 네트워크, 및/또는 네트워크 엘리먼트를 고려한다는 것을 알 수 있을 것이다. WTRU(102a, 102b, 102c, 102d)의 각각은 무선 환경에서 동작 및/또는 통신하도록 구성되는 임의의 타입의 디바이스일 수도 있다. 예로서, WTRU(102a, 102b, 102c, 102d)는 무선 신호를 송신 및/또는 수신하도록 구성될 수도 있고 유저 기기(user equipment; UE), 이동국(mobile station), 고정식 또는 이동식 가입자 유닛, 페이저, 셀룰러 전화, 개인 휴대형 정보 단말기(personal digital assistant; PDA), 스마트폰, 랩탑, 넷북, 퍼스널 컴퓨터, 무선 센서, 가전기기(consumer electronics) 등등을 포함할 수도 있다.
통신 시스템(100)은 기지국(114a) 및 기지국(114b)을 또한 포함할 수도 있다. 기지국(114a, 114b)의 각각은, 코어 네트워크(106/107/109), 인터넷(110), 및/또는 기타 네트워크(112)와 같은 하나 이상의 통신 네트워크에 대한 액세스를 용이하게 하기 위해 WTRU(102a, 102b, 102c, 102d) 중 적어도 하나와 무선으로 인터페이싱하도록 구성되는 임의의 타입의 디바이스일 수도 있다. 예로서, 기지국(114a, 114b)은 기지국 트랜스시버(base transceiver station; BTS), 노드 B, eNode B, 홈 노드 B, 홈 eNode B, 사이트 컨트롤러, 액세스 포인트(access point; AP), 무선 라우터 등등일 수도 있다. 기지국(114a, 114b) 각각이 단일의 엘리먼트로서 묘사되지만, 기지국(114a, 114b)은 임의의 수의 인터커넥트된(interconnected) 기지국 및/또는 네트워크 엘리먼트를 포함할 수도 있다는 것을 알 수 있을 것이다.
기지국(114a)은, 기지국 컨트롤러(base station controller; BSC), 무선 네트워크 컨트롤러(radio network controller; RNC), 중계 노드 등등과 같은 다른 기지국 및/또는 네트워크 엘리먼트(도시되지 않음)를 또한 포함할 수도 있는 RAN(103/104/105)의 일부일 수도 있다. 기지국(114a) 및/또는 기지국(114b)은, 셀(도시되지 않음)로서 칭해질 수도 있는 특정한 지리적 영역 내에서 무선 신호를 송신 및/또는 수신하도록 구성될 수도 있다. 셀은 셀 섹터로 더 분할될 수도 있다. 예를 들면, 기지국(114a)과 관련된 셀은 3개의 섹터로 분할될 수도 있다. 따라서, 하나의 실시형태에서, 기지국(114a)은 3개의 트랜스시버, 즉, 셀의 각각의 섹터에 대해 하나의 트랜스시버를 포함할 수도 있다. 다른 실시형태에서, 기지국(114a)은 다중입력 다중출력(multiple-input multiple-output; MIMO) 기술을 활용할 수도 있고, 따라서, 셀의 각각의 섹터에 대해 다수의 트랜스시버를 활용할 수도 있다.
기지국(114a, 114b)은, 임의의 적절한 무선 통신 링크(예를 들면, 무선 주파수(radio frequency; RF), 마이크로파, 적외선(infrared; IR), 자외선(ultraviolet; UV), 가시광 등등)일 수도 있는 무선 인터페이스(air interface; 115/116/117)를 통해 WTRU(102a, 102b, 102c, 102d) 중 하나 이상과 통신할 수도 있다. 무선 인터페이스(115/116/117)는 임의의 적절한 무선 액세스 기술(radio access technology; RAT)을 사용하여 확립될 수도 있다.
보다 구체적으로는, 위에서 언급된 바와 같이, 통신 시스템(100)은 다중 액세스 시스템일 수도 있고 CDMA, TDAM, FDAM, OFDMA, SC-FDMA 등등과 같은 하나 이상의 채널 액세스 방식을 활용할 수도 있다. 예를 들면, RAN(103/104/105) 내의 기지국(114a) 및 WTRU(102a, 102b, 102c)는, 광대역 CDMA(wideband CDMA; WCDMA)를 사용하여 무선 인터페이스(115/116/117)를 확립할 수도 있는, 범용 이동 통신 시스템(Universal Mobile Telecommunications System; UMTS) 지상 무선 액세스(Terrestrial Radio Access)(UTRA)와 같은 무선 기술을 구현할 수도 있다. WCDMA는 고속 패킷 액세스(High-Speed Packet Access; HSPA) 및/또는 진화된 HSPA(Evolved HSPA; HSPA+)와 같은 통신 프로토콜을 포함할 수도 있다. HSPA는 고속 다운링크 패킷 액세스(High-Speed Downlink Packet Access; HSDPA) 및/또는 고속 업링크 패킷 액세스(High-Speed Uplink Packet Access; HSUPA)를 포함할 수도 있다.
다른 실시형태에서, 기지국(114a) 및 WTRU(102a, 102b, 102c)는, 롱 텀 에볼루션(LTE) 및/또는 LTE-어드밴스드(LTE-Advanced; LTE-A)를 사용하여 무선 인터페이스(115/116/117)를 확립할 수도 있는 무선 기술 예컨대 진화된 UMTS 지상 무선 액세스(Evolved UMTS Terrestrial Radio Access; E-UTRA)를 구현할 수도 있다.
다른 실시형태에서, 기지국(114a) 및 WTRU(102a, 102b, 102c)는, IEEE 802.16(즉, 와이맥스(Worldwide Interoperability for Microwave Access; WiMAX)), CDMA2000, CDMA2000 1X, CDMA2000 EV-DO, IS-2000(Interim Standard 2000), IS-95(Interim Standard 95), IS-856(Interim Standard 856), 이동 통신용 글로벌 시스템(Global System for Mobile communications; GSM), EDGE(Enhanced Data rates for GSM Evolution), GSM EDGE(GERAN) 등등과 같은 무선 기술을 구현할 수도 있다.
도 1a의 기지국(114b)은, 예를 들면, 무선 라우터, 홈 노드 B, 홈 eNode B, 또는 액세스 포인트일 수도 있고, 사업장, 가정, 차량, 캠퍼스 등등과 같은 국소화된 영역에서 무선 연결성을 용이하게 하기 위해 임의의 적절한 RAT를 활용할 수도 있다. 하나의 실시형태에서, 기지국(114b) 및 WTRU(102c, 102d)는 무선 근거리 통신망(wireless local area network; WLAN)을 확립하기 위해 IEEE 802.11과 같은 무선 기술을 구현할 수도 있다. 다른 실시형태에서, 기지국(114b) 및 WTRU(102c, 102d)는 무선 사설 영역 네트워크(wireless personal area network; WPAN)를 확립하기 위해 IEEE 802.15와 같은 무선 기술을 구현할 수도 있다. 또 다른 실시형태에서, 기지국(114b) 및 WTRU(102c, 102d)는 피코셀 또는 펨토셀을 확립하기 위해 셀룰러 기반 RAT(예를 들면, WCDMA, CDMA2000, GSM, LTE, LTE-A 등등)를 활용할 수도 있다. 도 1a에서 도시되는 바와 같이, 기지국(114b)은 인터넷(110)에 대한 직접 연결을 구비할 수도 있다. 따라서, 기지국(114b)은 코어 네트워크(106/107/109)를 통해 인터넷(110)에 액세스할 필요가 없을 수도 있다.
RAN(103/104/105)은, WTRU(102a, 102b, 102c, 102d) 중 하나 이상으로 음성, 데이터, 애플리케이션, 및/또는 인터넷 전화 프로토콜(voice over internet protocol; VoIP) 서비스를 제공하도록 구성되는 임의의 타입의 네트워크일 수도 있는 코어 네트워크(106/107/109)와 통신할 수도 있다. 예를 들면, 코어 네트워크(106/107/109)는 호 제어(call control), 과금 서비스, 모바일 위치 기반 서비스, 선불 통화, 인터넷 연결성, 비디오 분배 등등을 제공할 수도 있고, 및/또는 유저 인증과 같은 하이 레벨의 보안 기능을 수행할 수도 있다. 도 1a에서 도시되진 않지만, RAN(103/104/105) 및/또는 코어 네트워크(106/107/109)는, RAN(103/104/105)과 동일한 RAT 또는 상이한 RAT를 활용하는 다른 RAN과 직접 또는 간접 통신할 수도 있다는 것을 알 수 있을 것이다. 예를 들면, E-UTRA 무선 기술을 활용할 수도 있는 RAN(103/104/105)에 연결되는 것 외에, 코어 네트워크(106/107/109)는 GSM 무선 기술을 활용하는 다른 RAN(도시되지 않음)과 또한 통신할 수도 있다.
코어 네트워크(106/107/109)는 WTRU(102a, 102b, 102c, 102d)가 PSTN(108), 인터넷(110), 및/또는 기타 네트워크(112)에 액세스하는 데 게이트웨이로서 또한 기능할 수도 있다. PSTN(108)은, 기존 전화 서비스(plain old telephone service; POTS)를 제공하는 회선 교환 전화 네트워크를 포함할 수도 있다. 인터넷(110)은, TCP/IP(transmission control protocol/internet protocol; 전송 제어 프로토콜/인터넷 프로토콜) 일군(suite)에서의 TCP, 유저 데이터그램 프로토콜(user datagram protocol; UDP) 및 IP와 같은 일반적인 통신 프로토콜을 사용하는 인터커넥트된 컴퓨터 네트워크 및 디바이스의 글로벌 시스템을 포함할 수도 있다. 네트워크(112)는 다른 서비스 공급자에 의해 소유되고/되거나 운영되는 유선 및/또는 무선 통신 네트워크를 포함할 수도 있다. 예를 들면, 네트워크(112)는, RAN(103/104/105)과 동일한 RAT 또는 상이한 RAT를 활용할 수도 있는 하나 이상의 RAN에 연결되는 다른 코어 네트워크를 포함할 수도 있다.
통신 시스템(100)에서의 WTRU(102a, 102b, 102c, 102d) 중 몇몇 또는 전체는 다중 모드 성능을 포함할 수도 있다, 즉, WTRU(102a, 102b, 102c, 102d)는 상이한 무선 링크를 통해 상이한 무선 네트워크와 통신하기 위한 다수의 트랜스시버를 포함할 수도 있다. 예를 들면, 도 1a에서 도시되는 WTRU(102c)는, 셀룰러 기반 무선 기술을 활용할 수도 있는 기지국(114a)과, 그리고 IEEE 802 무선 기술을 활용할 수도 있는 기지국(114b)과 통신하도록 구성될 수도 있다.
도 1b는 예시적인 WTRU(102)의 시스템 도면이다. 도 1b에 도시되는 바와 같이, WTRU(102)는 프로세서(118), 트랜스시버(120)를 포함하는 통신 인터페이스(119), 송신/수신 엘리먼트(122), 스피커/마이크(124), 키패드(126), 디스플레이/터치패드(128), 비분리식 메모리(130), 분리식 메모리(132), 전원(134), 글로벌 포지셔닝 시스템(global positioning system; GPS) 칩셋(136), 및 센서(138)를 포함할 수도 있다. WTRU(102)는 일 실시형태와 여전히 부합하면서 상기 엘리먼트의 임의의 부조합(sub-combination)을 포함할 수도 있다는 것을 알 수 있을 것이다. 또한, 실시형태는, 기지국(114a 및 114b), 및/또는, 다른 것들 중에서도, 기지국 트랜스시버(BTS), 노드 B, 사이트(site) 컨트롤러, 액세스 포인트(AP), 홈 노드 B, 진화형 홈 노드 B(eNodeB), 홈 진화형 노드 B(home evolved node-B; HeNB), 홈 진화형 노드 B 게이트웨이, 프록시 노드와 같은 그러나 이들로 한정되지는 않는, 기지국(114a 및 114b)이 나타낼 수도 있는 노드가, 도 1b에서 묘사되고 본원에서 설명되는 엘리먼트 중 일부 또는 전체를 포함할 수도 있다는 것을 고려한다.
프로세서(118)는 범용 프로세서, 특수 목적의 프로세서, 종래의 프로세서, 디지털 신호 프로세서(digital signal processor; DSP), 복수의 마이크로프로세서, DSP 코어와 관련하는 하나 이상의 마이크로프로세서, 컨트롤러, 마이크로컨트롤러, 주문형 반도체(Application Specific Integrated Circuit; ASIC), 필드 프로그래머블 게이트 어레이(Field Programmable Gate Array; FPGA) 회로, 임의의 다른 타입의 집적 회로(integrated circuit; IC), 상태 머신 등등일 수도 있다. 프로세서(118)는 신호 코딩, 데이터 프로세싱, 전력 제어, 입/출력 프로세싱, 및/또는 WTRU(102)가 무선 환경에서 동작하는 것을 가능하게 하는 임의의 다른 기능성(functionality)을 수행할 수도 있다. 프로세서(118)는, 송신/수신 엘리먼트(122)에 커플링될 수도 있는 트랜스시버(120)에 커플링될 수도 있다. 도 1b가 프로세서(118)와 트랜스시버(120)를 별개의 컴포넌트로서 묘사하지만, 프로세서(118)와 트랜스시버(120)는 전자적 패키지 또는 칩에 함께 통합될 수도 있다는 것을 알 수 있을 것이다.
RF 및 광 신호를 송신/수신 엘리먼트(122)는 무선 인터페이스(115/116/117)를 통해 기지국(예를 들면, 기지국(114a))으로 신호를 송신하거나, 또는 그 기지국으로부터 신호를 수신하도록 구성될 수도 있다. 예를 들면, 하나의 실시형태에서, 송신/수신 엘리먼트(122)는 RF 신호를 송신 및/또는 수신하도록 구성되는 안테나일 수도 있다. 다른 실시형태에서, 송신/수신 엘리먼트(122)는, 예를 들면, IR, UV, 또는 가시광 신호를 송신 및/또는 수신하도록 구성되는 방출기(emitter)/검출기일 수도 있다. 또 다른 실시형태에서, 송신/수신 엘리먼트(122)는 RF 및 광 신호 양자를 송신 및 수신하도록 구성될 수도 있다. 송신/수신 엘리먼트(122)는 무선 신호의 임의의 조합을 송신 및/또는 수신하도록 구성될 수도 있다는 것을 알 수 있을 것이다.
또한, 송신/수신 엘리먼트(122)가 도 1b에서 단일의 엘리먼트로서 묘사되지만, WTRU(102)는 임의의 수의 송신/수신 엘리먼트(122)를 포함할 수도 있다. 보다 구체적으로는, WTRU(102)는 MIMO 기술을 활용할 수도 있다. 따라서, 하나의 실시형태에서, WTRU(102)는, 무선 인터페이스(115/116/117)를 통해 무선 신호를 송신 및 수신하기 위한 두 개 이상의 송신/수신 엘리먼트(122)(예를 들면, 다수의 안테나)를 포함할 수도 있다.
트랜스시버(120)는, 송신/수신 엘리먼트(122)에 의해 송신될 신호를 변조하도록 그리고 송신/수신 엘리먼트(122)에 의해 수신되는 신호를 복조하도록 구성될 수도 있다. 위에서 언급된 바와 같이, WTRU(102)는 다중 모드 성능을 가질 수도 있다. 따라서, 트랜스시버(120)는, WTRU(102)가, 예를 들면, UTRA 및 IEEE 802.11과 같은 다수의 RAT를 통해 통신하는 것을 가능하게 하기 위한 다수의 트랜스시버를 포함할 수도 있다.
WTRU(102)의 프로세서(118)는, 스피커/마이크(124), 키패드(126), 및/또는 디스플레이/터치패드(128)(예를 들면, 액정 디스플레이(liquid crystal display; LCD) 디스플레이 유닛 또는 유기 발광 다이오드(organic light- emitting diode; OLED) 디스플레이 유닛)에 커플링될 수도 있고, 그리고 이들로부터 유저 입력 데이터를 수신할 수도 있다. 프로세서(118)는 유저 데이터를 스피커/마이크(124), 키패드(126), 및/또는 디스플레이/터치패드(128)로 또한 출력할 수도 있다. 또한, 프로세서(118)는, 비분리식 메모리(130) 및/또는 분리식 메모리(132)와 같은 임의의 타입의 적절한 메모리로부터의 정보에 액세스할 수도 있고, 그리고 그 임의의 타입의 적절한 메모리에 데이터를 저장할 수도 있다. 비분리식 메모리(130)는 랜덤 액세스 메모리(random-access memory; RAM), 리드 온리 메모리(read-only memory; ROM), 하드디스크, 또는 임의의 다른 타입의 메모리 스토리지 디바이스를 포함할 수도 있다. 분리식 메모리(132)는 가입자 식별 모듈(subscriber identity module; SIM) 카드, 메모리 스틱, 시큐어 디지털(secure digital; SD) 메모리 카드 등등을 포함할 수도 있다. 다른 실시형태에서, 프로세서(118)는, 서버 또는 가정용 컴퓨터(도시되지 않음)와 같은 WTRU(102)에 물리적으로 위치되지 않은 메모리로부터의 정보에 액세스할 수도 있고, 그리고 그 메모리에 데이터를 저장할 수도 있다.
프로세서(118)는 전원(134)으로부터 전력을 수신할 수도 있고, WTRU(102)의 다른 컴포넌트로 전력을 분배하도록 및/또는 그 전력을 제어하도록 구성될 수도 있다. 전원(134)은 WTRU(102)에 전력을 공급하기 위한 임의의 적절한 디바이스일 수도 있다. 예를 들면, 전원(134)은 하나 이상의 드라이 셀 배터리(예를 들면, 니켈 카드뮴(NiCd), 니켈 아연(NiZn), 니켈 금속 수소(NiMH), 리튬 이온(Li ion) 등등), 솔라 셀, 연료 전지 등등을 포함할 수도 있다.
프로세서(118)는, WTRU(102)의 현재 위치에 관한 위치 정보(예를 들면, 경도 및 위도)를 제공하도록 구성될 수도 있는 GPS 칩셋(136)에 또한 커플링될 수도 있다. 또한, GPS 칩셋(136)으로부터의 정보 외에, 또는 그 정보 대신, WTRU(102)는 무선 인터페이스(115/116/117)를 통해 기지국(예를 들면, 기지국(114a, 114b))으로부터 위치 정보를 수신할 수도 있고/있거나 두 개 이상의 가까운 기지국으로부터 수신되고 있는 신호의 타이밍에 기초하여 자신의 위치를 결정할 수도 있다. WTRU(102)는 일 실시형태와 여전히 부합하면서 임의의 적절한 위치 결정 방법을 통해 위치 정보를 획득할 수도 있다는 것을 알 수 있을 것이다.
프로세서(118)는, 추가적인 피쳐, 기능성, 및/또는 유선 또는 무선 연결성을 제공하는 하나 이상의 소프트웨어 및/또는 하드웨어 모듈을 포함할 수도 있는 기타 주변장치(138)에 추가로 커플링될 수도 있다. 예를 들면, 주변장치(138)는 가속도계, 전자 콤파스, 위성 트랜스시버, (사진 및 비디오용의) 디지털 카메라, 범용 직렬 버스(universal serial bus; USB) 포트, 진동 디바이스, 텔레비전 트랜스시버, 핸즈프리 헤드셋, Bluetooth® 모듈, 주파수 변조(frequency modulated; FM) 라디오 유닛, 디지털 뮤직 플레이어, 미디어 플레이어, 비디오 게임 플레이어 모듈, 인터넷 브라우저 등등을 포함할 수도 있다.
도 1c는 일 실시형태에 따른 RAN(103)과 코어 네트워크(106)의 시스템 도면이다. 위에서 언급되는 바와 같이, RAN(103)은 무선 인터페이스(115)를 통해 WTRU(102a, 102b, 102c)와 통신하기 위해 UTRA 무선 기술을 활용할 수도 있다. RAN(103)은 코어 네트워크(106)와 또한 통신할 수도 있다. 도 1c에서 도시되는 바와 같이, RAN(103)은, 무선 인터페이스(115)를 통해 WTRU(102a, 102b, 102c)와 통신하기 위한 하나 이상의 트랜스시버를 각각 포함할 수도 있는 노드 B(140a, 140b, 140c)를 포함할 수도 있다. 노드 B(140a, 140b, 140c) 각각은 RAN(103) 내의 특정 셀(도시되지 않음)과 관련될 수도 있다. RAN(103)은 RNC(142a, 142b)를 또한 포함할 수도 있다. RAN(103)은, 일 실시형태와 여전히 부합하면서, 임의의 수의 노드 B 및 RNC를 포함할 수도 있다는 것을 알 수 있을 것이다.
도 1c에서 도시되는 바와 같이, 노드 B(140a, 140b)는 RNC(142a)와 통신할 수도 있다. 추가적으로, 노드 B(140c)는 RNC(142b)와 통신할 수도 있다. 노드 B(140a, 140b, 140c)는 Iub 인터페이스를 통해 각각의 RNC(142a, 142b)와 통신할 수도 있다. RNC(142a, 142b)는 Iur 인터페이스를 통해 서로 통신할 수도 있다. RNC(142a, 142b)의 각각은, 자신이 연결되는 각각의 노드 B(140a, 140b, 140c)를 제어하도록 구성될 수도 있다. 또한, RNC(142a, 142b)의 각각은 다른 기능성, 예컨대 외부 루프 전력 제어, 부하 제어, 수락 제어(admission control), 패킷 스케줄링, 핸드오버 제어, 매크로 다이버시티, 보안 기능, 데이터 암호화 등등을 수행하거나 지원하도록 구성될 수도 있다.
도 1c에서 도시되는 코어 네트워크(106)는 미디어 게이트웨이(media gateway; MGW)(144), 모바일 스위칭 센터(mobile switching center; MSG)(146), 서빙 GPRS 지원 노드(serving GPRS support node; SGSN)(148), 및/또는 게이트웨이 GPRS 지원 노드(gateway GPRS support node; GGSN)(150)를 포함할 수도 있다. 상기 엘리먼트의 각각이 코어 네트워크(106)의 일부로서 묘사되지만, 이들 엘리먼트 중 임의의 하나는 코어 네트워크 운영자 이외의 엔티티에 의해 소유되고/되거나 운영될 수도 있다는 것을 알 수 있을 것이다.
RAN(103)에서의 RNC(142a)는 IuCS 인터페이스를 통해 코어 네트워크(106)의 MSC(146)에 연결될 수도 있다. MSC(146)는 MGW(144)에 연결될 수도 있다. MSC(146) 및 MGW(144)는, WTRU(102a, 102b, 102c)와 전통적인 지상 회선(land-line) 통신 디바이스 사이의 통신을 용이하게 하기 위해, PSTN(108)과 같은 회선 교환 네트워크에 대한 액세스를 WTRU(102a, 102b, 102c)에게 제공할 수도 있다.
RAN(103)에서의 RNC(142a)는 IuPS 인터페이스를 통해 코어 네트워크(106)의 SGSN(148)에 또한 연결될 수도 있다. SGSN(148)은 GGSN(150)에 연결될 수도 있다. SGSN(148) 및 GGSN(150)은, WTRU(102a, 102b, 102c)와 IP 대응 디바이스(IP-enabled device) 사이의 통신을 용이하게 하기 위해, 패킷 교환 네트워크, 예컨대 인터넷(110)에 대한 액세스를 WTRU(102a, 102b, 102c)에게 제공할 수도 있다.
위에서 언급되는 바와 같이, 코어 네트워크(106)는 네트워크(112)에 또한 연결될 수도 있는데, 네트워크(112)는 다른 서비스 공급자에 의해 소유되고/되거나 운영되는 다른 유선 및/또는 무선 네트워크를 포함할 수도 있다.
도 1d는 일 실시형태에 따른 RAN(104)과 코어 네트워크(107)의 시스템 도면이다. 위에서 언급되는 바와 같이, RAN(104)은 무선 인터페이스(116)를 통해 WTRU(102a, 102b, 102c)와 통신하기 위해 E-UTRA 무선 기술을 활용할 수도 있다. RAN(104)은 코어 네트워크(107)와 또한 통신할 수도 있다.
RAN(104)은 eNode B(160a, 160b, 160c)를 포함할 수도 있지만, RAN(104)은 일 실시형태와 여전히 부합하면서 임의의 수의 eNode B를 포함할 수도 있다. eNode B(160a, 160b, 160c) 각각은 무선 인터페이스(116)를 통해 WTRU(102a, 102b, 102c)와 통신하기 위한 하나 이상의 트랜스시버를 포함할 수도 있다. 하나의 실시형태에서, eNode B(160a, 160b, 160c)는 MIMO 기술을 구현할 수도 있다. 따라서, eNode B(160a)는, 예를 들면, WTRU(102a)로 무선 신호를 송신하고 WTRU(102a)로부터 무선 신호를 수신하기 위해 다수의 안테나를 사용할 수도 있다.
eNode B(160a, 160b, 160c)의 각각은 특정 셀(도시되지 않음)과 관련될 수도 있고 무선 리소스 관리 결정, 핸드오버 결정, 업링크 및/또는 다운링크에서의 유저의 스케줄링 등등을 핸들링하도록 구성될 수도 있다. 도 1d에서 도시되는 바와 같이, eNode B(160a, 160b, 160c)는 X2 인터페이스를 통해 서로 통신할 수도 있다.
도 1d에서 도시되는 코어 네트워크(107)는 이동성 관리 엔티티 게이트웨이(mobility management entity gateway; MME)(162), 서빙 게이트웨이(164), 및 패킷 데이터 네트워크(packet data network; PDN) 게이트웨이(166)를 포함할 수도 있다. 상기 엘리먼트의 각각이 코어 네트워크(107)의 일부로서 묘사되지만, 이들 엘리먼트 중 임의의 하나는 코어 네트워크 운영자 이외의 엔티티에 의해 소유되고/되거나 운영될 수도 있다는 것을 알 수 있을 것이다.
MME(162)는 S1 인터페이스를 통해 RAN(104) 내의 eNode B(160a, 160b, 160c)의 각각에 연결될 수도 있고 제어 노드로서 기능할 수도 있다. 예를 들면, MME(162)는 WTRU(102a, 102b, 102c)의 유저를 인증하는 것, 베어러 활성/비활성, WTRU(102a, 102b, 102c)의 초기 연결 동안 특정 서빙 게이트웨이를 선택하는 것 등등을 담당할 수도 있다. MME(162)는, GSM 또는 WCDMA와 같은 다른 무선 기술을 활용하는 다른 RAN(도시되지 않음)과 RAN(104) 사이를 스위칭하기 위한 제어 플레인 기능을 또한 제공할 수도 있다.
서빙 게이트웨이(164)는 S1 인터페이스를 통해 RAN(104) 내의 eNode B(160a, 160b, 160c)의 각각에 연결될 수도 있다. 서빙 게이트웨이(164)는 일반적으로 유저 데이터 패킷을, WTRU(102a, 102b, 102c)로/로부터 라우팅하고 포워딩할 수도 있다. 서빙 게이트웨이(164)는 다른 기능, 예컨대 eNode B간 핸드오버(inter-eNode B handover) 동안 유저 플레인을 앵커링하는 것, 다운링크 데이터가 WTRU(102a, 102b, 102c)에 대해 이용가능할 때 페이징을 트리거하는 것, WTRU(102a, 102b, 102c)의 컨텍스트(context)를 관리하고 저장하는 것 등등을 또한 수행할 수도 있다.
서빙 게이트웨이(164)는, WTRU(102a, 102b, 102c)와 IP 대응 디바이스 사이의 통신을 용이하게 하기 위해, 인터넷(110)과 같은 패킷 교환 네트워크에 대한 액세스를 WTRU(102a, 102b, 102c)에게 제공할 수도 있는 PDN 게이트웨이(166)에 또한 연결될 수도 있다.
코어 네트워크(107)는 다른 네트워크와의 통신을 용이하게 할 수도 있다. 예를 들면, 코어 네트워크(107)는, WTRU(102a, 102b, 102c)와 전통적인 지상 회선 통신 디바이스 사이의 통신을 용이하게 하기 위해, PSTN(108)과 같은 회선 교환 네트워크에 대한 액세스를 WTRU(102a, 102b, 102c)에게 제공할 수도 있다. 예를 들면, 코어 네트워크(107)는, 코어 네트워크(107)와 PSTN(108) 사이의 인터페이스로서 기능하는 IP 게이트웨이(예를 들면, IP 멀티미디어 서브시스템(IP multimedia subsystem; IMS) 서버)를 포함할 수도 있거나, 또는 그 IP 게이트웨이와 통신할 수도 있다. 또한, 코어 네트워크(107)는, 다른 서비스 공급자에 의해 소유되고/되거나 운영되는 다른 유선 및/또는 무선 네트워크를 포함할 수도 있는 네트워크(112)에 대한 액세스를 WTRU(102a, 102b, 102c)에게 제공할 수도 있다.
도 1e는 일 실시형태에 따른 RAN(105)과 코어 네트워크(109)의 시스템 도면이다. RAN(105)은, 무선 인터페이스(117)를 통해 WTRU(102a, 102b, 102c)와 통신하기 위해 IEEE 802.16 무선 기술을 활용하는 액세스 서비스 네트워크(access service network; ASN)일 수도 있다. 하기에서 더 논의되는 바와 같이, WTRU(102a, 102b, 102c), RAN(105), 및 코어 네트워크(109)의 상이한 기능적 엔티티 사이의 통신 링크는 참조 포인트(reference point)로서 정의될 수도 있다.
도 1e에서 도시되는 바와 같이, RAN(105)은 기지국(180a, 180b, 180c) 및 ASN 게이트웨이(182)를 포함할 수도 있지만, RAN(105)은, 일 실시형태와 여전히 부합하면서, 임의의 수의 기지국 및 ASN 게이트웨이를 포함할 수도 있다는 것을 알 수 있을 것이다. 기지국(180a, 180b, 180c) 각각은, RAN(105) 내의 특정 셀(도시되지 않음)과 관련될 수도 있고 무선 인터페이스(117)를 통해 WTRU(102a, 102b, 102c)와 통신하기 위한 하나 이상의 트랜스시버를 포함할 수도 있다. 하나의 실시형태에서, 기지국(180a, 180b, 180c)은 MIMO 기술을 구현할 수도 있다. 따라서, 기지국(180a)은, 예를 들면, WTRU(102a)로 무선 신호를 송신하고, WTRU(102a)로부터 무선 신호를 수신하기 위해 다수의 안테나를 사용할 수도 있다. 기지국(180a, 180b, 180c)은 또한, 핸드오프 트리거링(handoff triggering), 터널 확립, 무선 리소스 관리, 트래픽 분류, 서비스 품질(quality of service; QoS) 정책 강화(enforcement) 등등과 같은 이동성 관리 기능을 제공할 수도 있다. ASN 게이트웨이(182)는 트래픽 집성 포인트로서 기능할 수도 있으며 페이징, 가입자 프로파일의 캐싱, 코어 네트워크(109)로의 라우팅 등등을 담당할 수도 있다.
WTRU(102a, 102b, 102c)와 RAN(105) 사이의 무선 인터페이스(117)는, IEEE 802.16 명세(specification)를 구현하는 R1 참조 포인트로서 정의될 수도 있다. 또한, WTRU(102a, 102b, 102c)의 각각은 코어 네트워크(109)와의 논리 인터페이스(logical interface)(도시되지 않음)를 확립할 수도 있다. WTRU(102a, 102b, 102c)와 코어 네트워크(109) 사이의 논리 인터페이스는 R2 참조 포인트로서 정의될 수도 있는데, R2 참조 포인트는 인증(authentication), 인가(authorization), IP 호스트 구성 관리, 및/또는 이동성 관리를 위해 사용될 수도 있다.
기지국(180a, 180b, 180c) 각각의 사이의 통신 링크는, WTRU 핸드오버 및 기지국 사이의 데이터의 전송을 용이하게 하기 위한 프로토콜을 포함하는 R8 참조 포인트로서 정의될 수도 있다. 기지국(180a, 180b, 180c)과 ASN 게이트웨이(182) 사이의 통신 링크는 R6 참조 포인트로서 정의될 수도 있다. R6 참조 포인트는 WTRU(102a, 102b, 102c)의 각각과 관련되는 이동성 이벤트에 기초하여 이동성 관리를 용이하게 하기 위한 프로토콜을 포함할 수도 있다.
도 1e에서 도시되는 바와 같이, RAN(105)은 코어 네트워크(109)에 연결될 수도 있다. RAN(105)과 코어 네트워크(109) 사이의 통신 링크는, 예를 들면, 데이터 전송 및 이동성 관리 성능을 용이하게 하기 위한 프로토콜을 포함하는 R3 참조 포인트로서 정의될 수도 있다. 코어 네트워크(109)는 모바일 IP 홈 에이전트(mobile IP home agent; MIP-HA)(184), 인증, 인가, 어카운팅(authentication, authorization, accounting; AAA) 서버(186), 및 게이트웨이(188)를 포함할 수도 있다. 상기 엘리먼트의 각각이 코어 네트워크(109)의 일부로서 묘사되지만, 이들 엘리먼트 중 임의의 하나는 코어 네트워크 운영자 이외의 엔티티에 의해 소유되고/되거나 운영될 수도 있다는 것을 알 수 있을 것이다.
MIP-HA(184)는 IP 어드레스 관리를 담당할 수도 있고, WTRU(102a, 102b, 102c)가 상이한 ASN 및/또는 상이한 코어 네트워크 사이에서 로밍하는 것을 가능하게 할 수도 있다. MIP-HA(184)는, WTRU(102a, 102b, 102c)와 IP 대응 디바이스 사이의 통신을 용이하게 하기 위해, 패킷 교환 네트워크, 예컨대 인터넷(110)에 대한 액세스를 WTRU(102a, 102b, 102c)에게 제공할 수도 있다. AAA 서버(186)는 유저 인증 및 유저 서비스 지원을 담당할 수도 있다. 게이트웨이(188)는 다른 네트워크와의 상호연동(interworking)을 용이하게 할 수도 있다. 예를 들면, 게이트웨이(188)는, WTRU(102a, 102b, 102c)와 전통적인 지상 회선 통신 디바이스 사이의 통신을 용이하게 하기 위해, PSTN(108)과 같은 회선 교환 네트워크에 대한 액세스를 WTRU(102a, 102b, 102c)에게 제공할 수도 있다. 또한, 게이트웨이(188)는, 다른 서비스 공급자에 의해 소유되고/되거나 운영되는 다른 유선 및/또는 무선 네트워크를 포함할 수도 있는 네트워크(112)에 대한 액세스를 WTRU(102a, 102b, 102c)에게 제공할 수도 있다.
도 1e에서 도시되지 않지만, RAN(105)은 다른 ASN에 연결될 수도 있고 코어 네트워크(109)는 다른 코어 네트워크에 연결될 수도 있다는 것을 알 수 있을 것이다. RAN(105)과 다른 ASN 사이의 통신 링크는 R4 참조 포인트(도시되지 않음)로서 정의될 수도 있는데, R4 참조 포인트는 RAN(105)과 다른 ASN 사이에서 WTRU(102a, 102b, 102c)의 이동성을 조정하기(coordinating) 위한 프로토콜을 포함할 수도 있다. 코어 네트워크(109)와 다른 코어 네트워크 사이의 통신 링크는 R5 참조 포인트(도시되지 않음)로서 정의될 수도 있는데, R5 참조 포인트는 홈 코어 네트워크와 방문 코어 네트워크(visited core network) 사이에서의 상호연동을 용이하게 하기 위한 프로토콜을 포함할 수도 있다.
도 1f는 도 1a의 통신 시스템(100) 내에서 사용될 수도 있는 예시적인 네트워크 엔티티(190)를 묘사한다. 도 1f에서 묘사되는 바와 같이, 네트워크 엔티티(190)는 통신 인터페이스(192), 프로세서(194), 및 비일시적 데이터 스토리지(196)를 포함하는데, 이들 모두는 버스, 네트워크, 또는 다른 통신 경로(198)에 의해 통신적으로 링크된다.
통신 인터페이스(192)는 하나 이상의 통신 인터페이스 및/또는 하나 이상의 무선 통신 인터페이스를 포함할 수도 있다. 유선 통신에 관하여, 통신 인터페이스(192)는, 한 예로서, 이더넷 인터페이스와 같은 하나 이상의 인터페이스를 포함할 수도 있다. 무선 통신에 관하여, 통신 인터페이스(192)는, 하나 이상의 안테나, 하나 이상의 타입의 무선(예를 들면, LTE) 통신에 대해 설계되고 구성되는 하나 이상의 트랜스시버/칩셋과 같은 컴포넌트, 및/또는 관련 기술분야에서 숙련된 자에 의해 적절한 것으로 간주되는 임의의 다른 컴포넌트를 포함할 수도 있다. 또한 무선 통신에 관하여, 통신 인터페이스(192)는 무선 통신(예를 들면, LTE 통신, 와이파이 통신, 등등)의 네트워크측 - 클라이언트측과는 반대임 - 상에서 작용하기에 적절한 크기 및 구성으로 구비될 수도 있다. 따라서, 통신 인터페이스(192)는, 커버리지 영역 내의 다수의 이동국, UE, 또는 다른 액세스 단말을 서빙하기 위한 적절한 기기 및 회로부(circuitry)(아마도 다수의 트랜스시버를 포함함)를 포함할 수도 있다.
프로세서(194)는, 관련 기술분야에서 숙련된 자에 의해 적절한 것으로 간주되는 임의의 타입을 갖는 하나 이상의 프로세서를 포함할 수도 있는데, 몇몇 예는 범용 마이크로프로세서 및 전용 DSP를 포함한다.
데이터 스토리지(196)는, 관련 기술분야에서 숙련된 자에 의해 적절한 것으로 간주되는 임의의 하나 이상의 타입의 비일시적 데이터 스토리지가 사용될 수 있기 때문에, 임의의 비일시적 컴퓨터 판독가능 매체 또는 이러한 매체의 조합의 형태를 취할 수도 있는데, 몇몇 예는, 몇 개만을 거론하자면, 플래시 메모리, 리드 온리 메모리(read-only memory; ROM), 및 랜덤 액세스 메모리(random-access memory; RAM)를 포함한다. 도 1f에서 묘사되는 바와 같이, 데이터 스토리지(196)는, 본원에서 설명되는 다양한 네트워크 엔티티 기능의 다양한 조합을 실행하기 위한, 프로세서(194)에 의해 실행가능한 프로그램 명령어(197)를 포함한다.
몇몇 실시형태에서, 본원에서 설명되는 네트워크 엔티티 기능은 도 1f의 네트워크 엔티티(190)의 것과 유사한 구조를 갖는 네트워크 엔티티에 의해 실행된다. 몇몇 실시형태에서, 이러한 기능 중 하나 이상은 다수의 네트워크 엔티티의 세트의 조합에 의해 실행되는데, 이 경우 각각의 네트워크 엔티티는 도 1f의 네트워크 엔티티(190)의 것과 유사한 구조를 갖는다. 다양하고 상이한 실시형태에서, 네트워크 엔티티(190)는, RAN(103)(에서의 하나 이상의 엔티티), RAN(104)(에서의 하나 이상의 엔티티), RAN(105)(에서의 하나 이상의 엔티티), 코어 네트워크(106)(에서의 하나 이상의 엔티티), 코어 네트워크(107)(에서의 하나 이상의 엔티티), 코어 네트워크(109)(에서의 하나 이상의 엔티티), 기지국(114a), 기지국(114b), 노드 B(140a), 노드 B(140b), 노드 B(140c), RNC(142a), RNC(142b), MGW(144), MSC(146), SGSN(148), GGSN(150), eNode-B(160a), eNode-B(160b), eNode-B(160c), MME(162), 서빙 게이트웨이(164), PND 게이트웨이(166), 기지국(180a), 기지국(180b), 기지국(180c), ANS 게이트웨이(182), MIP-HA(184), AAA(186), 및 게이트웨이(188) 중 하나 이상이다 - 또는 그 하나 이상을 적어도 포함한다. 또한 확실히, 본원에서 설명되는 네트워크 엔티티 기능을 실행하기 위한 다양한 실시형태에서, 다른 네트워크 엔티티 및/또는 네트워크 엔티티의 조합이 사용될 수 있는데, 상기 목록이 제한으로서가 아니라 예로서 제공되기 때문이다.
개인 맞춤된 캐시 활용을 통해 웹 브라우저 애플리케이션 로딩의 가속을 가능하게 하기 위한, 도 1a 내지 도 1f에 관하여 설명되는 시스템과 함께 사용될 수도 있는 시스템 및 방법이 본원에서 설명된다. 하나의 실시형태에서, 시스템은 개인 맞춤된 캐시/사전렌더링 매니저(Personalized Cache/Prerendering Manager; PCPM)를 포함한다. PCPM은, 목표로 삼은 그리고 효율적인 정보 관리를 허용하는 유저 모델링 및 다른 특정 정보에 의존하는 캐시 활용을 위한 특수 메커니즘을 통해 개인 맞춤되고 최적화되어 가속된 그리고 효율적인 웹 브라우저 애플리케이션 로딩을 가능하게 하는 분산형 논리 엔티티이다. PCPM은 물리적으로 모바일 디바이스에, 및/또는 클라우드의 에지에, 또는 클라우드 안에 상주할 수 있다. 하나의 실시형태에서, 논리적인 그러나 물리적으로 분리된 엔티티 사이에서, TCP 또는 UDP 소켓과 같은 표준 통신 프로토콜이 사용된다.
시스템은, 하나의 실시형태에서, 실행가능한(actionable) 유저 모델의 자동 구축을 포함한다. 이것은, 브라우저 캐시 활용의 목적을 위한, 예를 들면, 미래의 리소스 다운로드를 예측하기 위한 유저 거동 및 선호도의 작동 학습을 포함할 수도 있다.
도 2에서 도시되는 시스템(200)은 하나의 실시형태이며, 웹 브라우저 엔진(234)과 통신하는 개인 맞춤된 브라우저 캐시/사전렌더링 매니저(PCPM; 204)를 포함한다. 그것은 또한, 정보 저장소(202), 유저 인터페이스(210), 수행 옵션 출력 파라미터(218), 써드파티 입력 파라미터를 수신하기 위한 써드파티 인터페이스(222), 캘린더 데이터(206)와 같은 정보 소스, 할 일 목록(to-do list) 데이터(208)뿐만 아니라, 전화 통화, 워킹, 런닝, 쿠킹, 물리적 웰빙, 등등과 같은 멀티태스킹을 검출하기 위해 사용될 수도 있는 센서를 묘사한다. 센서는 가속도계(212), GPS 수신기(214), 마이크(216), 자력계(220), 자이로스코프(224), 화학 센서(226), 온도 센서(228)뿐만 아니라, 전력 사용량과 같은 디바이스 동작 데이터 미터기(또는 계량 발전기(metric generator))(230) 및 배터리 상태 디바이스/표시기(232)를 포함할 수도 있다. 캘린더 및 할 일 목록과 같은 유저 특정 데이터 소스는 유저 의도 및 활동을 결정하기 위해 사용될 수 있다.
개인 맞춤된 캐시/사전 렌더링 매니저(PCPM)은, 유저가 웹 브라우저를 통해 웹을 브라우징하기 위해 컴퓨터 시스템을 활용하고 있을 때 관련될 수도 있다. 시간의 임의의 시점에, 유저가 페이지 상의 오브젝트(예를 들면, 링크)를 클릭하는 것에 의해 페이지와 잠재적으로 상호작용할 수 있는 가시적인 페이지가 존재하는데, 클릭은, 동일한 페이지 상에서 또는 새롭게 디스플레이되는 페이지 상에서 새로운 정보가 디스플레이되게 할 것이다.
하나의 예시적인 캐싱 전략은 다음과 같이 설명된다: 임의의 주어진 시간에 유저가 페이지 A를 브라우징하고 있고 페이지 A가 다른 페이지에 대한 L개의 링크를 포함하고 있는 경우, PCPM은, 유저가 이들 L개의 페이지를 보기를 원하고 있다는 기대 하에, 어떤 우선순위에서 이들 L개의 페이지를 프리페치(pre-fetch)하고/하거나 브라우저로 사전렌더링할지를 결정하기 위해, 알고리즘을 사용할 것이다.
PCPM 소프트웨어 시스템은 웹 브라우저 캐싱 전략의 실시간 제어 및 그 실행을 가능하게 한다. 이 시스템은 브라우저의 디폴트 캐싱 전략을 대체하거나, 보강하거나 또는 오버라이딩할 수도 있다. PCPM 시스템은 브라우저와 동일한 연결 디바이스(예를 들면, 랩탑, 태블릿, 모바일 디바이스) 상에 함께 위치될 수도 있거나, 또는 그것은 에지 클라우드 또는 클라우드에 상주하는 동안 유저를 위해 동작할 수 있다. 또한, 몇몇 실시형태에서, PCPM 시스템은 상기 위치 사이에서, 계산 부하가 이들 인스턴스 사이에서 나누어지도록, 분산될 수도 있다. 이 경우, 논리적인 그러나 물리적으로 분리된 엔티티 사이에서, TCP 또는 UDP 소켓과 같은 표준 통신 프로토콜이 사용된다. 이러한 실시형태에서, 유저 디바이스는, 현재의 브라우징 세션에 관한 메타데이터, 예컨대 보여지고 있는 URL을 PCPM으로 전달할 수도 있다. 그 다음, 네트워크 기반의 PCPM 디바이스는 그 URL에서 데이터를 독립적으로 검색할(retrieve) 수도 있고 컨텐츠를 독립적으로 분석할 수도 있고 나중에 WTRU와 같은 유저 기기(user equipment; UE)로 전달되는 캐싱 전략을 정형화할 수도 있다. 네트워크 기반의 엔티티로 전달되는 다른 데이터는, 상기 설명된 바와 같은 UE 센서 데이터와 같은 다른 입력일 수도 있다.
기술분야에서 숙련된 자가 알 수 있는 바와 같이, 본 개시의 그리고 컴퓨터 시스템(190)의 양태는, 몇몇 소프트웨어 컴포넌트를 통합하는 장치로서 구체화될 수도 있다. 따라서, 본 개시의 몇몇 양태, 또는 그 일부는, 마이크로프로세서, 마이크로컨트롤러, 또는 디지털 순차 로직, 등등과 같은 하나 이상의 컴포넌트, 예컨대 프로세서(194)를, 메모리(196)와 같은 유형의(tangible) 컴퓨터 판독가능 메모리 디바이스에 저장되는 하나 이상의 소프트웨어 컴포넌트(예를 들면, 프로그램 코드, 펌웨어, 상주형 소프트웨어, 마이크로코드, 등등)와 결합할 수도 있는데, 하나 이상의 컴포넌트와 하나 이상의 소프트웨어 컴포넌트는 조합하여 본원에서 설명되는 바와 같은 기능을 수행하는 구체적으로 구성된 장치를 형성한다. 특수하게 프로그래밍된 디바이스를 형성하는 이들 조합은 본원에서 "모듈"로 일반적으로 칭해질 수도 있다. 모듈의 소프트웨어 컴포넌트 부분은 임의의 컴퓨터 언어로 작성될 수도 있고 모놀리식 코드 베이스(monolithic code base)의 일부일 수도 있거나, 또는 보다 이산적인 코드 부분으로 개발될 수도 있는데, 이러한 것은 더 객체 지향 컴퓨터 언어에서 통상적인 것이다. 또한, 모듈은 복수의 컴퓨터 플랫폼, 서버, 단말, 등등에 걸쳐 분산될 수도 있다. 주어진 모듈은 심지어, 설명된 기능이 별개의 프로세서 및/또는 컴퓨팅 하드웨어 플랫폼에 의해 수행되도록 구현될 수도 있다.
하나의 실시형태에서, PCPM 시스템은 다양한 모듈을 포함한다. 유저 모델 모듈은, 저장된 소스 및 스트리밍 데이터 소스에 기초하여 유저 모델을 자동적으로 구축하고 업데이트한다. 추론 모듈은 최적의 실시간 캐싱 전략을 결정하도록 동작한다. 입력 모듈은 유저가 유저 모델을 입력하는 것 및 수정하는 것을 허용하고 써드파티(네트워크 캐리어를 포함함)가 유저 모델을 입력하는 것 및 수정하는 것을 허용할 수도 있다. 몇몇 실시형태에서, UE는 캐리어의 네트워크로부터 캐싱 파라미터를 페치하도록 구성될 수도 있다. 다른 실시형태에서, UE는 캐리어 또는 다른 써드파티 서비스 공급자로부터 푸시 통지를 수신하도록 구성될 수도 있다. 캐싱 파라미터는 서비스 레벨 약정에 기초하여 설정될 수도 있고, 네트워크 용량 또는 리소스 제약사항에 또한 기초할 수도 있다. 다른 실시형태에서는, 현재의 캐싱 전략에서 수반되는 리소스 소비 및 유용성 파라미터뿐만 아니라 이들에게 얼마나 영향을 끼치는지에 대한 힌트를 유저에게 디스플레이하도록 구성될 수도 있는 피드백 모듈이 포함된다. 이것은 소비 전력, 데이터 사용량, 가격정책, 및 다른 파라미터 영향을 포함한다.
PCPM은, 다음 중 하나 이상을 포함하는 스트리밍 정보 소스 및 정보 저장소를 활용할 수도 있다: (i) 유저 모델; (ii) 브라우저의 현재 상태(예를 들면, 유저가 어떤 페이지를 보고 있고 얼마나 오래 동안 응시하고 있는지 및 (이러한 정보가 주어진 실시형태에서 이용가능한 정도까지의) 다른 사용량 정보); (iii) 최근의 브라우징 이력; 및 (iv) 현재의 유저 상황 및 다른 활동 및 특히 멀티태스킹(예를 들면, 문서를 편집하는 것, 전화 통화하는 것).
도 2에서 도시되는 바와 같이, PCPM은, 임의의 주어진 시간 간격에서 추가적인 상황 및 유저 활동 정보의 도움을 통해, 웹 브라우저에 대해 무엇이 가장 최적의 캐싱 전략이 될 것인지를 결정하기 위해, 특수한 유저 모델을 사용한다. 이 결정은 특정 조건이 충족되는 경우 발생할 수도 있다. 이것은: (i) 하루 중 특정 시간에; (ii) 특정한 시간 간격으로; (iii) 유저에게 디스플레이되는 각각의 새로운 페이지에 대해; (iv) 액세스 네트워크에 주요 변화가 발생할 때; (v) 유저 거동에 주요 변화가 발생할 때를 포함하지만 이들로 제한되지는 않는다.
전략 결정을 활성화하기 위한 특정 트리거는 유저에 의해 또는 타인에 의해 자동적으로 설정될 수도 있거나 유저의 거동의 패턴을 사용하여 계산될 수 있다.
도 3을 참조하면, 개인 맞춤된 캐시/사전렌더링 매니저가 현대의 브라우저의 메인 컴포넌트에 통합될 수도 있다. 시스템(300)은, 데이터 지속 캐시 모듈(302), 유저 인터페이스 모듈(304), 브라우저 엔진 모듈(306), 네트워킹 모듈(312), 자바스크립트 인터프리터 모듈(314), UI 백엔드 모듈(316) 및 PCPM 모듈(308)을 포함한다.
몇몇 실시형태에서, PCPM은 유저가 특정 페이지 A를 브라우징하고 있을 때 실시간으로 동작한다. PCPM은 페이지 상에 나타나는 링크의 URL의 리스트를 획득하고 각각의 잠재적으로 링크된 페이지에 고유의 식별자(이것은 링크된 페이지의 URL 또는 다른 식별자일 수도 있다)를 할당한다. 페이지에서 URL의 리스트를 획득하는 것은, 크롬 브라우저(Chrome Browser)에서의 PageFinishedLoading Event와 같은 본래의 페이지 로딩 이벤트를 인터셉트하는 것에 의해 그리고 페이지의 모든 하이퍼링크를 파싱하는 것에 의해 행해질 수 있다.
PCPM은, 확률의 우선순위화된 리스트의 형태를 취하는 캐싱 전략 및 임계 파라미터, 정책, 또는 이 둘의 조합을 생성한다. 확률의 리스트는 다음의 형태를 취할 수 있다:
페이지1 id 확률1
페이지2 id 확률2
...
페이지L id 확률L
임계 파라미터는 우선순위 리스트 중 어떤 페이지가 프리페치될 것인지를 결정할 것이다. 임계 파라미터의 값은, 유저 현재 활동 및 네트워크 부하를 포함하는 다양한 상황적 파라미터를 사용하여 PCPM에 의해 결정될 것이다. 몇몇 실시형태에서, 임계치는 페이지와 관련되는 비용 함수에 기초할 수도 있다. 하나의 이러한 실시형태에서, 비용 함수는 대응하는 페이지와 관련되는 데이터의 양 및 확률의 조합으로부터 형성될 수도 있다. 임계치는 또한 유저에 의해 구성될 수도 있다.
정책의 형태의 전략의 예로서, 하나의 정책은, 비디오를 포함하는 페이지가 프리페치되지 않아야 한다는 것을 나타낼 수 있다. 정책은 또한 확률적으로(stochastically) 구현될 수 있다. 예를 들면, 비디오를 포함하는 페이지가 주말에 시간의 80% 프리페치되어야 하지만 주중에는 시간의 60%만 프리페치되어야 한다는 것을 나타낼 수 있다. 다른 정책은, 유저가 다른 태스크(예를 들면, 전화 통화하는 것, 이메일을 체크하는 것, 영화를 보는 것)를 수행하고 있으면, 어떤 페이지도 프리페치되지 않아야 한다는 것을 나타낼 수 있을 것이다.
몇몇 실시형태에서, 정책은 주어진 페이지를 프리페치하는 확률을 실시간으로 결정하고 또한 변화하는 상황 및 다른 실시간 파라미터가 주어지면 주어진 파라미터의 랭킹을 수정한다. 유저 정보와 같은 정보 또는 써드파티 입력이 변하는 경우, PCPM은, 예를 들면 새로운 임계치 및/또는 확률의 새로운 세트를 생성하는 것에 의해 새로운 프리페치 전략을 개발하도록 동작할 수도 있다. 확률의 생성에서, 유저의 브라우징 거동의 이력이 또한 사용될 수도 있다. 예를 들면, 유저의 브라우징 이력은, 그가 주중 동안에 비해 주말에 걸쳐 비디오를 볼 가능성이 더 높다는 것을 나타낼 수도 있다.
예측 유저 모델의 구축 및 사용이 도 4와 관련하여 개략적으로 예시된다. 몇몇 실시형태에서, 유저 모델은, 다양한 방식에서, 실시간으로 또는 특정 시간 간격으로 구축되고 수정된다. 하나의 예는 자동 통계 머신 학습 기술뿐만 아니라 기호 추론(symbolic reasoning)(AI) 기술을 사용한다. 기술분야에서 숙련된 자는, 실행가능한 유저 모델을 확립하는 데 유용할 수 있는 다양한 이용가능한 우선순위화, 추천 및 유저 거동 예측 알고리즘 및 방법과 친숙할 것이다. 예측 유저 모델(416)은, 유저가 특정한 URL을 내비게이팅할 확률(418)과 같은 정보를 생성하도록 동작할 수도 있거나, 또는 그것은 상이한 URL에 대해 다른 프리페치 가중치를 할당할 수도 있다. 예를 들면, 프리페치 가중치는, 유저가 그 URL로 내비게이팅할 확률에 기초하여 증가하고 특정한 URL의 웹 페이지의 증가된 사이즈와 함께 감소하는 값일 수도 있다. 프리페치 임계치는, 하기에서 논의되는 바와 같은 네트워크 상태 및 유저에 관한 다른 정보에 응답하여 증가되거나 또는 감소될 수도 있다.
예측 유저 모델(416)은 입력으로서 다양한 정보를 취할 수 있다. 예를 들면, 유저의 관심 영역(414)이 수신될 수도 있고, 예측 유저 모델(416)은, 유저가 웹 페이지를 내비게이팅할 가능성이 높다는 것을 그의 관심에 따라 결정할 수 있다. 웹 사용의 유저 레벨, 예를 들면, 유저가 집중적인 브라우징에 얼마나 자주 관련되는지가, 또한 고려될 수 있다. 예를 들면, 웹을 보다 집중적으로 브라우징하는 경향이 있는 유저는 더 많이 공격적인 프리페칭(예를 들면, 더 낮은 프리페치 임계치, 또는 더 높은 프리페치 가중치)을 수용할 수 있다.
몇몇 실시형태에서, 유저 모델은, 유저가 관심을 갖는 토픽(예를 들면, 농구, 채식 음식(vegan food), 남성 패션)의 리스트 또는 토픽(속성)이 그들의 중요도 레벨을 의미하는 수치적 가중치와 짝을 이루는 속성-값 쌍의 리스트(예를 들면, 농구 1.0, 채식 음식 0.8, 남성 패션 0.2)를 포함해서, 유저 선호도의 리스트를 포함한다. 가중치는, 예를 들면, 1.0까지 조정될 수 있을 것이다. 이러한 실시형태에서, 유저의 선호도는, 상이한 링크의 속성의 리스트에 대해 매칭될 수 있다. 링크 속성(예를 들면, 페이지 메타데이터)의 리스트는, 링크명을 파싱하거나 링크 태그를 파싱하는 것에 의한 것과 같이, 다양한 방식에서 획득될 수 있다. 매치가 발견되면, 링크는 프리페치 리스트에 추가된다. 매칭 프로세스가 종료하면, 프리페치 리스트는 렌더링을 위해 브라우저로 (예를 들면, 프로세스간 통신을 통해) 전송된다. 렌더링은 브라우저의 본래의 또는 디폴트 프리페칭 정책을 오버라이딩하는 것에 의해 수행될 수 있다.
멀티태스킹에서의 유저의 능력 또는 관심사항에 관한 정보(424)(이것은 자체보고 되거나 또는 유저의 거동으로부터 추론된다)는 예측 유저 모델(416)에 의해 고려될 수 있다. 예를 들면, 유저가 멀티태스킹에 능숙하지 않은 경우, 그리고 그 유저가 미디어를 스트리밍하는 것, 전화 통화하는 것과 같은 다른 활동에 관련되거나, 또는 운동과 같은 물리적 활동에 관련되는 경우, 프리페치 임계치는 실질적으로 상승되거나, 프리페칭은 모두 중지될 수도 있다. 한편, 유저가 멀티태스킹에 능숙한 경우, 다른 활동에서의 유저의 관여는 프리페치 임계치에 거의 영향을 끼치지 않을 수도 있거나 또는 전혀 영향을 끼치지 않을 수도 있다. 다른 시간적 브라우징 거동 정보(426), 예컨대 유저가 가장 집중적으로 브라우징하는 때의 하루 중 시간을 나타내는 정보가 또한 고려될 수도 있다. 캐시 사이즈 또는 프리페칭의 레벨에 관한 유저 선호도와 같은 다양한 유저 입력(430)이 또한 고려될 수 있다. 써드파티로부터의 정보(432), 예를 들면, 네트워크 혼잡의 레벨에 관한 액세스 공급자로부터의 정보가 또한 고려될 수 있다. 예를 들면, 네트워크 혼잡의 상황 하에서 과도한 프리페치 트래픽을 방지하기 위해, 프리페치 임계치가 상승될 수 있다.
자신이 수신하는 정보를 사용하여, 예측 유저 모델(416)은 캐시/사전렌더링 전략(428)을 생성하는데, 이것은 URL의 리스트 또는 웹 페이지에 대한 다른 식별자를, 식별자의 각각에 대한 프리페치 가중치와 함께 포함할 수도 있다.
링크 속성이 유저 모델의 속성 중 어느 것과도 대응하지 않는 상황에서, 캐싱 정책은 0%의 확률을 관련 링크에 자동적으로 할당할 수도 있다. 몇몇 실시형태에서, 시스템은, 뜻밖의 행운의 다운로드(serendipitous download)를 지원하기 위해 이러한 페이지를 가끔씩(랜덤하게 또는 어떤 규칙을 가지고) 프리페치할 수도 있다.
유저 모델로의 유저 입력은 입력 모듈에 의해 제공된다. 이 모듈은 유저에게, 일반적인 선호도를 특정하는 것에 의해, 예를 들면, 그 또는 그녀가 스마트폰을 사용하여 웹을 브라우징할 때, 명시적으로 요청되지 않는 한, 비디오가 프리페치되지 않아야 한다는 것을 나타내는 것에 의해, 그의 또는 그녀의 모델을 입력하고 업데이트할 능력을 제공한다. 모듈은 유저 경험과 디바이스 리소스에 대한 캐싱 전략의 절충 및 영향을 디스플레이할 수도 있다: 그것은 유저에게 전력 활용(배터리 수명), 레이턴시, 대역폭 및 다른 리소스에 대한 캐시 전력의 영향을 관찰하고 수정하는 옵션을 제공할 수도 있다. 하나의 실시형태에서, 유저는, 집중적인 활동의 유저 정의 기간 동안 브라우징 응답성을 향상시키기 위해 캐싱 활동이 증가될 수도 있도록, 그래픽적 슬라이더 입력을 제공받는다.
유저 입력 성능은 다양한 양식(modality)을 통해 공급될 수 있다. 예를 들면, 유저는, 브라우저 메뉴 상의 옵션으로서 또는 유저가 관련 URL을 타이핑하는 것을 통해 액세스할 수 있는 독립적인 웹사이트/포털로서 액세스가능한 "설정" 웹 페이지를 갖는 웹사이트를 통해 시스템과 상호작용할 수도 있다. 설정 페이지 상에서, 유저를 다양한 설정가능 파라미터로 안내하는 링크의 리스트가 제공된다. 링크 중 하나는 유저를 유저 모델 페이지로 안내한다. 일단 이 페이지 상에 있으면, 상기 언급된 바와 같이 그의 선호도를 의미하는 속성 값 쌍의 리스트가 디스플레이된다. 설정 페이지에서의 다른 링크는, 하루 중 시간, 요일(day of week) 및 특별한 휴일 및 이벤트와 같은 다양한 파라미터뿐만 아니라 사용되고 있는 디바이스(예를 들면, 랩탑 대 모바일 디바이스)에 기초하여 유저가 캐싱 확률 임계치를 설정할 수 있는 페이지로 유저를 안내한다. 설정 페이지 상의 제3 링크는, 경험의 품질(quality of experience; "QoE") 및 리소스 활용에 대한 다양한 캐싱 전략 및 다른 파라미터의 절충 및 영향을 유저가 볼 수 있는 페이지로 유저를 데려갈 수 있다. 이들 링크는 별개의 페이지로 이어질 수 있거나 또는 설정 페이지 상에 존재할 수 있으며 선택시 메뉴를 열 수 있다. 디스플레이의 다른 시각적 방법이 또한 사용될 수 있다. 몇몇 실시형태에서, 설정 페이지는 음성으로 활성화된다.
기술분야에서 숙련된 자는, 실행가능한 유저 모델을 확립하는 데 유용할 수 있는 다양한 이용가능한 우선순위화, 추천 및 유저 거동 예측 알고리즘 및 방법과 친숙하게 될 것이다. 예를 들면, 유저 거동은, 유저의 과거 브라우징 거동의 그 자체에 대한 또는 다른 유저의 브라우징 거동과 조합한 유저의 과거 브라우징 거동의 마르코프 모델(Markov model)에 기초하여 예측될 수 있다.
유저 모델 또는 캐싱 전략에 대한 써드파티 입력이 또한 제공될 수도 있다. 가끔 써드파티, 예컨대 네트워크 캐리어 또는 애플리케이션 공급자(예를 들면, 게임 공급자)는 유저 모델 또는 캐싱 전략을 수정하도록 허용될 수도 있다. 이것은, 네트워크 캐리어가 라스트 마일 성능(last-mile performance)을 더 좋게 최적화할 필요가 있을 때(예를 들면, 라스트 마일이 혼잡한 경우 과도한 캐싱을 제거할 필요가 있을 때)의 네트워크 캐리어로부터의 입력을 포함한다. 유저는, 모델로의 그리고 캐싱 전략으로의 써드파티 입력을 가능할 것을 옵트인 방식(opt-in)으로 허용받을 수도 있다. 몇몇 실시형태에서, 유저는 보다 비용 효율적인 서비스 및 더 높은 품질을 수신하는 것에 의해 옵트인 방식에 대한 보상을 받을 수도 있다.
유저 경험과 디바이스 리소스에 대한 캐싱 전략의 절충 및 영향은 디스플레이될 수도 있다. 유저가 다양한 캐싱 전략의 비용/이익 절충을 이해하는 것을 가능하게 하기 위해, PCPM은, 임의의 주어진 유저 모델 및 캐싱 전략에 대해 결과적으로 나타나는 영향이 무엇인지를 결정하기 위한 모듈 또는 서브시스템으로 구성될 수도 있다. 캐싱 전략 영향은 다음을 포함하지만 이들로 제한되지는 않는 다양한 방식으로 정량화될 수 있다: (i) 소비 전력; (ii) 유저 경험(예를 들면, 새로운 페이지의 다운로드의 레이턴시); (iii) 대역폭 활용/비용. 이 모듈은 정보를 시각적 디스플레이에 제시할 것이고 또한 캐싱 전략을 수정하는 것 및 변화의 효과를 보는 것에 대한 유저 액세스를 허용할 것이다.
상이한 캐싱 전략의 효과를 예측하기 위한 서브시스템은, 활용되었던 다양한 캐싱 전략에 대한 과거의 브라우저에 의한 리소스 소비에 관한 정보를 포함하는 이력 데이터베이스를 포함하는 다양한 계산 모듈로 구성된다. 이들 리소스는 유저가 사용하고 있는 디바이스에 고유할 것이다.
예를 들면, 예측 서브시스템은 유저가 종종 방문하는 다양한 공지의 웹사이트의 페이지의 링크 속성의 통상적인 분포에 관한 정보를 포함할 수도 있고, 따라서 이들 속성 중 작은 비율에 유저가 관심을 가질 것이다는 것을 유저 모델이 특정하는 경우, 이것은 정량화가능한 배터리 및 대역폭 둘 다에서의 절약에 대응할 것이다. 예를 들면, 통상적인 웹 페이지에 대한 임계치 위에 있는 속성의 수가, 유저가 일반적으로 브라우징하는 통상적인 웹페이지의 링크에 대한 속성의 5%만을 구성한다는 것을 (유저의 이력에 기초하여) 유저 모델이 특정하면, 배터리 및 대역폭의 절약은, 링크 중 프리페치되지 않을 95%의 함수일 것이다. 이것은, 95%를 하나의 컬러로 도시하고 5%를 다른 컬러로 도시하는 바의 형태로, 또는 히스토그램 또는 파이 차트의 형태 또는 수치적 정보의 시각적 디스플레이의 임의의 다른 형태로 유저에게 디스플레이될 수 있다. 대역폭에 대한 상이한 캐싱 전략의 효과를 계산하기 위해 유사한 기술이 사용될 수 있다. 유저는 임계치를 변경하도록 그리고 상기 설명된 절약에 대한 새로운 임계치의 영향을 관측하도록 허용된다. 이것은 과거 계산과 함께 나란히 또는 임의의 다른 방식으로 보여질 수 있다.
예시적인 유저 인터페이스가 도 7에서 예시된다. 예측 페이지(700)는 상이한 옵션의 사용을 통해 이용가능한 "절충 및 절약"을 디스플레이한다. 풀다운 메뉴(702 및 704)는, 캐싱 확률 임계치 및 속성-값 쌍과 같은 선호도를 유저가 설정할 수 있게 하는 설정 페이지로 유저를 안내한다. 예측 페이지(700)는, 예측 서브시스템의 예측에 기초하여 상이한 설정의 상대적인 이점 및 단점을 디스플레이한다. 상기에서 논의된 통계적 정보를 사용하여, 이들 두 모델은 리소스 활용 및 예측된 QoE의 관점에서 비교되고, 그 정보는 유저에게 제시된다. 예를 들면, 예측 페이지(700)는, 그래픽(706, 708, 및 710)을 사용하여, 옵션1 하에서 설정된 옵션이, 옵션2와 비교하여, 배터리 사용에서 80%의 절약으로 그리고 데이터 사용에서 60%의 절약으로 이어지지만, 지연은 두 배 길어진다는 것을 나타낼 수도 있다. 풀다운 메뉴(702 및 704) 하의 옵션은, 유저의 또는 모집단 중 일부의 이력적 거동에 기초하여 미리 정의된 옵션을 포함할 수도 있다.
예측 서브시스템은 또한, 유저의 경험의 품질에 대한 상이한 캐싱 전략의 예상된 효과를 결정하도록 동작할 수 있다. 예측 서브시스템은, 유저가 결국 관심을 갖게 되는 페이지를 프리페치하지 않는 것에 대한 페널티를 결정한다. 이 페널티는, 프리페치되지 않았던 페이지를 프리페치하기 위한 지연에 관한 이력적 정보를 사용하여 계산될 수 있다. 이러한 지연은 디바이스 및 네트워크 고유의 기반으로 기록될 수 있는데, 지연이, 예를 들면, LTE 상의 모바일 디바이스 대 랩탑 사이에서 상이할 가능성이 있기 때문이다. 결과는, 배터리 및 대역폭에서의 절약의 함수로서 발생할 가능성이 있는 평균 예상 지연을 나타내는 표의 형태로 디스플레이될 수 있다. 표에서의 정보는, 예를 들면, "당신이 클릭하는 링크를 프리페치하지 않으면, 배터리 수명을 95% 절약할 것이지만 10초의 지연이 발생할 가능성이 있습니다."라고 말하는 문장의 형태로 디스플레이될 수도 있다. 이 정보는 또한 그래픽적으로 제시될 수 있다.
유저 기기 엔티티, 예컨대 브라우저 소프트웨어를 구비한 WTRU에 의해 실행되는 방법이 도 5에서 예시된다. 단계 502에서, WTRU는 유저가 방문하기를 소망하는 웹 페이지의 선택을 수신한다. 이 선택은, 예를 들면, 유저가 웹 페이지의 URL을 타이핑해 넣는 것에 의해, 유저가 웹 페이지에 대한 링크를 선택하는 것에 의해, 유저가 웹 페이지에 대한 단축키를 선택하는 것에 의해, 또는 다른 수단에 의해 이루어질 수도 있다. 유저의 웹 페이지의 선택에 응답하여, WTRU는, 예를 들면, 웹 페이지에 대한 그리고 웹 페이지의 리소스에 대한 HTTP GET 요청을 사용하여 웹 페이지를 검색한다(retrieve). 방문된 웹 페이지는 WTRU의 브라우저를 사용하여 렌더링되고 디스플레이될 수도 있다.
단계 506에서, WTRU는 방문 웹 페이지로부터 링크되는 웹 페이지를 식별한다. 이들은, 예를 들면, HTML 문서에서 "A"(앵커(anchor)) 엘리먼트 내의 "href" 속성의 값으로 제공되는 URL을 갖는 웹 페이지일 수도 있다. 그러나, 기술분야에서 숙련된 자에게 명백한 바와 같이, 방문 웹 페이지로부터 링크되는 웹 페이지를 식별하기 위해 다른 기술이 사용될 수도 있다.
단계 510에서, 유저 기기 엔티티(예를 들면, WTRU)는 센서 데이터를 수신하고 그 데이터를 단계 512에서 유저 활동을 식별하기 위해 사용한다. 예를 들면, 센서는 가속도계일 수도 있고, WTRU는 가속도계로부터의 가속도의 패턴을 사용하여, 유저가 조깅, 런닝, 또는 다른 운동과 같은 물리적 활동에 관련되어 있다는 것을 결정할 수 있다. 센서는, 예를 들면, GPS 수신기일 수도 있고, 유저 활동은 유저의 위치 또는 움직임에 적어도 부분적으로 기초하여 결정될 수 있다. 센서는, 예를 들면, 온도계일 수도 있고, 유저 활동은, 온도계가 보통의 실내 온도를 벗어난(예를 들면, 20-26℃(68-80℉)를 벗어난) 온도 범위를 검출하면, 야외(outdoor) 활동인 것으로 결정될 수 있다. 몇몇 실시형태에서, WTRU는 전화 기능을 포함하고, 유저 활동을 식별하는 것은 유저가 전화로 통화 중인지의 여부를 결정하는 것을 포함한다. 몇몇 실시형태에서, WTRU는, 다수의 상이한 센서로부터의 입력을 사용하여 가장 가능성이 있는 유저 활동을 식별하는 추론적 통계 기술(예를 들면, 베이지안 통계(Bayesian statistics))를 사용하여 유저 활동을 식별할 수도 있다.
식별된 유저 활동에 적어도 부분적으로 기초하여, WTRU는 단계 518에서 프리페치할 다수의 링크된 웹 페이지를 선택한다. 몇몇 실시형태에서, 프리페치할 웹 페이지의 선택은 링크된 웹 페이지의 각각에 대한 프리페치 가중치를 결정하는 것(단계 508)에 의해 그리고 임계 가중치를 결정하는 것(단계 516)에 의해 수행되는데, 임계 가중치 이상의 프리페치 가중치를 갖는 웹 페이지는 프리페치되도록 선택된다.
프리페치 가중치의 결정은 다양한 기술을 사용하여 수행될 수 있다. 예를 들면, 상기 설명된 바와 같은 유저 모델을 사용하면, WTRU는, 링크된 웹 페이지의 각각에 대한, 유저가 각각의 웹 페이지로 내비게이팅할 확률을 결정할 수 있다. 웹 페이지로 내비게이팅하는 확률을 증가시키는 것은, 프리페치 가중치를 증가시키는 것에 대응한다. 위에서 언급된 바와 같이, 유저 모델은, 유저의 관심 및, 예를 들면, 유저의 캘린더로부터 결정되는 바와 같은 유저의 예상 활동을 고려할 수 있다. 예를 들면, 비지니스 지향 웹 페이지는 업무 시간(business hours) 동안 상대적으로 더 큰 프리페치 가중치를 제공받을 수도 있고, 한편 레크리에이션 웹 페이지(recreational web page)는 업무 시간 이후 상대적으로 더 큰 프리페치 가중치를 제공받을 수도 있다.
몇몇 실시형태에서, 링크된 웹 페이지의 프리페치는, 웹 페이지에서의 임베딩된 리소스의 사이즈를 포함해서, 링크된 웹 페이지의 사이즈에 적어도 부분적으로 기초할 수도 있다. 프리페치 가중치는 웹 페이지 사이즈를 증가시키기 위해 감소할 수도 있다. 예를 들면, 페이지의 프리페치 가중치는 페이지의 사이즈에 의해 나누어지는 페이지로 내비게이팅하는 확률에 비례할 수도 있다. 링크된 웹 페이지의 사이즈는, WTRU가 사이즈를 측정하기 위해 웹 페이지 자체를 페치하는 것을 실제로 요구하지 않고도 다양한 방식으로 결정될 수도 있다(이것은 페이지를 프리페치할지의 여부의 문제를 무관하게 만들 것이다). 예를 들면, 사이즈는 로컬하게 저장되어 있는 추정된 값일 수도 있다. 이와 관련하여, 뉴스 웹 사이트의 프론트 페이지는 컨텐츠가 빈번하게 변할 수도 있지만, 페이지의 전체 사이즈는 훨씬 오래 유지할 가능성이 있다는 것을 알 수 있다. 몇몇 실시형태에서, 링크된 웹 페이지의 사이즈는 WTRU와는 별개의 네트워크화된 서버에 의해 결정될 수도 있다. 그 방식에서, 네트워크화된 서버는, 무선 대역폭을 증가시키지 않고도 효과적인 캐싱 전략을 결정함에 있어서 WTRU를 지원할 수 있다.
몇몇 실시형태에서, 임계 가중치의 결정은 단계 512에서 식별되는 유저 활동에 적어도 부분적으로 기초한다. 몇몇 실시형태에서, 각각의 유저 활동은 미리 결정된 임계 가중치와 관련된다. 임계 가중치는, 특정 활동에 관련되는 유저가 하이 레벨의 프리페칭으로부터 이익을 얻을 가능성에 기초하여 할당될 수도 있다. 예를 들면, 물리적 활동에 관련되는 것으로, 야외 활동에 연루되는 것으로, 비디오를 보는 것으로, 또는 전화 통화를 하는 것으로 식별되는 유저는 웹 페이지의 빠른 렌더링을 요구할 가능성이 낮고 따라서 하이 레벨의 프리페칭으로부터 이익을 얻을 가능성이 적다.
임계 가중치가 유저 활동에 의존하는 것에 대한 대안예로서, 또는 이러한 시스템 외에, 링크된 웹 사이트의 개개의 프리페치된 가중치는 식별된 유저 활동에 부분적으로 기초하여 결정될 수도 있다. 식별된 유저 활동의 효과는 모든 프리페치 가중치에 적용될 수도 있다. 예를 들면, 유저가 야외 활동에 관련될 때 유저의 브라우징 활동이 절반으로 감소되면, 유저가 야외 활동에 관련될 때 모든 프리페치 가중치는 0.5의 인자에 의해 승산될 수도 있다. 몇몇 실시형태에서, 식별된 유저 활동의 효과는 개개의 프리페치 가중치에 적용될 수도 있다. 예를 들면, 유저가 (예를 들면, GPS 측정치에 기초하여) 여행 중인 것으로 결정되면, 호텔 및 레스토랑에 관련된 웹 사이트의 프리페치 가중치가 상대적으로 증가될 수도 있다.
몇몇 실시형태에서, 임계 가중치는 네트워크 트래픽의 레벨에 적어도 부분적으로 기초하여 결정된다. 이 트래픽 레벨은 네트워크 연결성 공급자에 의해 WTRU로 보고될 수도 있다. 몇몇 실시형태에서, 과도한 양의 프리페칭이 네트워크에 추가적인 부담을 주는 것을 방지하기 위해, 네트워크 트래픽의 증가하는 레벨에 응답하여, 임계 가중치는 증가된다. 역으로, 프리페치 임계치는 네트워크 트래픽이 거의 없을 때 더 낮아질 수도 있다.
몇몇 실시형태에서, WTRU는 네트워크화된 서버로부터 이들 가중치를 검색하는(retrieving) 것에 의해 프리페치 가중치를 결정할 수도 있다. 상기에서 더 상세히 설명된 바와 같이, 네트워크화된 서버는, 예를 들면, URL의 리스트를 포함하는 정보를, 각각의 URL과 관련되는 다른 타입의 프리페치 가중치 또는 확률과 함께 제공할 수 있다.
단계 520에서, WTRU는 프리페칭을 위해 선택되었던 웹 페이지를 검색한다. 예를 들면, WTRU는 임계 가중치 이상의 프리페치 가중치를 갖는 웹 페이지를 검색할 수도 있다. WTRU는 감소하는 프리페치 가중치의 순서로, 또는 상이한 순서로 웹 페이지를 검색할 수도 있다. 선택된 웹 페이지의 프리페칭은, 웹 페이지에 임베딩된 리소스(예컨대 이미지) 중 일부 또는 전체를 프리페치하는 것을 포함한다. 프리페치된 웹 페이지는, WTRU 자체의 메모리에서 구현될 수도 있는 또는 캐싱 서버 상에서 구현될 수도 있는 캐시에 저장된다. 단계 522에서 예시되는 바와 같이, 유저가 캐싱된 웹 페이지 중 하나를 (예를 들면, 관련 링크를 선택하는 것에 의해) 실제 선택하면, WTRU는 단계 524에서 캐시로부터 웹 페이지를 검색한다. 그 다음 선택된 캐싱된 페이지는 렌더링되어 유저에게 디스플레이된다. 몇몇 실시형태에서, 특히, 충분한 프로세싱 파워가 이용가능한 경우, 캐싱된 웹 페이지는, 이들 페이지가 유저에 의해 선택되기 이전에 메모리에서 렌더링될 수도 있고, 그 결과 페이지는 그것이 유저에 의해 선택되면 그리고 그것이 유저에 의해 선택될 때 거의 순간적으로 나타나게 된다.
페이지를 프리페치할지의 여부 또는 페이지를 프리페치할 때의 결정은 정책 지향 규칙을 사용하여 구현될 수 있다. 예를 들면, 정책은, 유저가 WTRU 상에서 전화 통화 중에 있을 때 프리페칭이 수행되지 않아야 한다는 것을 나타낼 수도 있다. 이러한 시스템에서, 유저 활동을 식별하는 일부로서, WTRU는, 유저가 전화 통화에 참여하고 있는지의 여부를 결정한다. 프리페칭은, 유저가 전화 통화에 참여하고 있지 않다는 결정이 이루어진 이후에만 수행될 수도 있다. 마찬가지로, 정책은, 유저가 물리적 활동에 관련되고 있을 때 프리페칭이 수행되지 않아야 한다는 것을 나타낼 수도 있다. 이러한 실시형태에서, 프리페칭은, 유저가 물리적 활동에 관련되지 않는다는 것을 결정한 이후에만 수행된다.
몇몇 실시형태는, 반드시 유저 기기 엔티티는 아닌 네트워크 엔티티(예컨대 네트워크 엔티티(190)) 상에서 구현된다. 예를 들면, 도 6의 실시형태는, 별개의 유저 기기 엔티티를 사용하여 브라우징하고 있는 유저의 브라우징 경험을 향상시키기 위한 네트워크 엔티티의 사용을 예시한다. 유저 기기 엔티티는 유저의 브라우징 활동에 대해 네트워크 엔티티에게 보고한다. 단계 602에서, 네트워크 엔티티는, 유저 기기 엔티티로부터, 유저에 의해 방문된 웹 페이지를 식별하는 정보를 수신한다. 이 정보는, 예를 들면, 방문된 웹 페이지를 식별하는 URL의 형태를 취할 수도 있다.
단계 604에서, 네트워크 엔티티는 방문 웹 페이지로부터 링크되는 웹 페이지를 식별한다. 네트워크 엔티티는, 예를 들면, 자기 자신의 HTTP GET 요청을, 유저에 의해 방문된 URL로 발행하는 것에 의해 그리고 결과를 파싱하여 링크된 페이지를 식별하는 것에 의해 이것을 수행할 수도 있다. 단계 606에서, 네트워크 엔티티는 링크된 웹 페이지의 컨텐츠를 결정하기 위해 링크된 페이지 중 적어도 몇몇을 검색한다. 그 다음, 네트워크 엔티티는, 검색된 웹 페이지의 컨텐츠에 적어도 부분적으로 기초하여, 유저에 대한 사전 캐싱 전략을 준비한다. 프리캐싱 전략은, 단계 612에서 예시되는 바와 같이, 유저 기기 엔티티에 의해 프리페치될 웹 페이지의 리스트를 포함할 수도 있다. 리스트는 URL의 리스트 또는 웹 페이지의 다른 식별자의 리스트일 수도 있다. 몇몇 실시형태에서, 리스트는 검색된 웹 페이지와 관련되는 확률 또는 다른 프리페치 가중치의 리스트를 포함한다.
다른 실시형태에 관하여 상기 언급되고 도 4에서 예시된 바와 같이, 프리페치될 웹 페이지의 리스트를 생성하기 위해, 다양하고 상이한 방법이 사용될 수 있다. 그러나, 예시의 목적을 위해, 도 6은, 페이지의 사이즈에 관한 정보 및 페이지가 비디오를 포함하는지의 여부에 관한 정보만을 예시한다. 이들 기술은, 프리페치될 페이지의 리스트의 생성에서 본원에서 설명되는 다른 기술과 통합될 수도 있다는 것이 이해되어야 한다. 단계 608에서, 네트워크 엔티티는 링크된 웹 페이지의 적어도 몇몇의 사이즈(이미지와 같은 임베딩된 리소스의 사이즈를 포함함)를 결정한다. 그 다음, 프리페치될 웹 페이지의 리스트는 링크된 웹 페이지의 사이즈에 적어도 부분적으로 기초한다. 예를 들면, 더 큰 웹 페이지는 리스트로부터 배제될 가능성이 더 높고, 한편 더 작은 웹 페이지는 리스트에 포함될 가능성이 더 높다. 몇몇 실시형태에서, 프리페치될 페이지의 리스트는, 임계 사이즈 미만의 사이즈를 갖는 페이지만을 포함할 수도 있다.
단계 610에서, 네트워크 엔티티는, 링크된 웹 페이지가 임베딩된 비디오를 포함하는지 또는 포함하지 않는지의 여부를 결정한다. 네트워크 엔티티는, 임베딩된 비디오를 갖는 페이지를 프리페치하지 않는 정책(이것은 유저의 선호도에 기초할 수 있음)을 강화할 수도 있다. 이러한 실시형태에서, 프리페치될 페이지의 리스트는, 비디오를 포함하지 않는 웹 페이지만을 포함한다.
몇몇 실시형태에서, 프리페치될 페이지의 리스트는, 각각의 링크된 페이지를 방문하는 유저의 확률을 결정하는 것에 의해 컴파일된다. 몇몇 실시형태에서, 이들 확률은, 도 5의 단계 508, 516, 518에서 예시되는 방법과 유사한 방법에서 프리페치 가중치를 결정하기 위해 사용될 수도 있다. 프리페치될 페이지의 리스트는, 임계 가중치 이상의 프리페치 가중치를 갖는 페이지만을 포함할 수도 있다. 몇몇 실시형태에서, 각각의 프리페치 가중치는 프리페치될 페이지의 리스트에 포함된다. 단계 614에서, 네트워크 엔티티는 프리페치될 페이지의 리스트를 유저 기기 엔티티에게 전송한다. 유저 기기 엔티티는 리스트 상에서 식별되는 페이지를 프리페치할 수도 있거나, 또는 유저 기기 엔티티는, 예를 들면, 유저가 통화 중에 있으면 임의의 페칭을 연기하는 것에 의해, 또는 임계 가중치를 넘는 프리페치 가중치를 갖는 페이지만을 프리페치하는 것에 의해, 자기 자신의 정책을 리스트에 적용할 수도 있다.
피쳐 및 엘리먼트가 특정 조합으로 위에서 설명되었지만, 기술분야에서 통상의 지식을 가진 자라면, 각각의 피쳐 또는 엘리먼트는 단독으로 사용될 수 있거나 또는 다른 피쳐 및 엘리먼트와의 임의의 조합으로 사용될 수 있다는 것을 알 수 있을 것이다. 또한, 본원에서 설명되는 방법은, 컴퓨터 또는 프로세서에 의한 실행을 위해 컴퓨터 판독가능 매체에 통합되는 컴퓨터 프로그램, 소프트웨어, 또는 펌웨어로 구현될 수도 있다. 컴퓨터 판독가능 매체의 예는 전자 신호(유선 또는 무선 연결을 통해 송신됨) 및 컴퓨터 판독가능 저장 매체를 포함한다. 컴퓨터 판독가능 저장 매체의 예는, 리드 온리 메모리(ROM), 랜덤 액세스 메모리(RAM), 레지스터, 캐시 메모리, 반도체 메모리 디바이스, 내장 하드 디스크 및 분리식 디스크와 같은 자기 매체, 광자기 매체, 및 CD-ROM 디스크 및 디지털 다기능 디스크(digital versatile disk; DVD)와 같은 광학 매체를 포함하지만, 이들로 한정되는 것은 아니다. 소프트웨어와 관련되는 프로세서는, WTRU, UE, 단말, 기지국, RNC, 또는 임의의 호스트 컴퓨터에서 사용하기 위한 무선 주파수 트랜스시버를 구현하기 위해 사용될 수도 있다.

Claims (20)

  1. 유저 기기 엔티티(user equipment(UE) entity)에 의해 실행되는 방법에 있어서,
    유저로부터의 입력에 응답하여 방문된 웹 페이지 - 상기 방문된 웹 페이지는 복수의 링크된 웹 페이지에 대한 링크를 포함함 - 를 검색하는(retrieving) 단계;
    상기 유저 기기의 센서에 적어도 부분적으로 기초하여 적어도 하나의 유저 활동을 식별하는 단계;
    프리페치될 다수의 상기 링크된 웹 페이지를 선택하는 - 프리페치될 페이지의 상기 선택은 상기 식별된 유저 활동에 적어도 부분적으로 기초함 - 단계; 및
    상기 선택된 웹 페이지를 프리페치하는 단계를 포함하는, 유저 기기 엔티티에 의해 실행되는 방법.
  2. 제1항에 있어서,
    상기 센서는 가속도계이고, 상기 적어도 하나의 유저 활동을 식별하는 단계는, 상기 유저가 물리적 활동에 관련된다는 것을 결정하는 단계를 포함하는, 유저 기기 엔티티에 의해 실행되는 방법.
  3. 제1항에 있어서,
    상기 UE 엔티티는 전화 기능성(functionality)을 포함하고, 상기 적어도 하나의 유저 활동을 식별하는 단계는, 상기 유저가 전화 통화하고 있다는 것을 결정하는 단계를 포함하는, 유저 기기 엔티티에 의해 실행되는 방법.
  4. 제1항에 있어서,
    복수의 상기 링크된 웹 페이지에 대한 각각의 프리페치 가중치를 결정하는 단계; 및
    상기 식별된 유저 활동에 적어도 부분적으로 기초하여 임계 가중치를 결정하는 단계를 더 포함하고,
    상기 프리페치하는 단계는, 상기 임계 가중치 이상의 프리페치 가중치를 갖는 링크된 웹 페이지만을 프리페치하는 단계를 포함하는, 유저 기기 엔티티에 의해 실행되는 방법.
  5. 제4항에 있어서,
    상기 프리페치 가중치는 상기 식별된 유저 활동에 적어도 부분적으로 기초하는, 유저 기기 엔티티에 의해 실행되는 방법.
  6. 제4항에 있어서,
    링크된 웹 페이지의 상기 프리페치 가중치는, 상기 링크된 웹 페이지로 상기 유저가 내비게이팅할 확률에 적어도 부분적으로 기초하는, 유저 기기 엔티티에 의해 실행되는 방법.
  7. 제4항에 있어서,
    링크된 웹 페이지의 상기 프리페치 가중치는, 상기 링크된 웹 페이지의 사이즈에 적어도 부분적으로 기초하는, 유저 기기 엔티티에 의해 실행되는 방법.
  8. 제4항에 있어서,
    링크된 웹 페이지의 상기 프리페치 가중치는, 상기 링크된 웹 페이지의 사이즈 및 상기 링크된 웹 페이지로 상기 유저가 내비게이팅할 확률 둘 다에 적어도 부분적으로 기초하는, 유저 기기 엔티티에 의해 실행되는 방법.
  9. 제4항에 있어서,
    상기 임계 가중치는 네트워크 트래픽의 레벨에 적어도 부분적으로 기초하는, 유저 기기 엔티티에 의해 실행되는 방법.
  10. 제1항에 있어서,
    상기 적어도 하나의 유저 활동을 식별하는 단계는 유저가 전화 통화에 참여하고 있는지의 여부를 결정하는 단계를 포함하고, 상기 프리페치하는 단계는 상기 유저가 전화 통화에 참여하고 있지 않다는 것을 결정한 이후에만 수행되는, 유저 기기 엔티티에 의해 실행되는 방법.
  11. 제1항에 있어서,
    상기 적어도 하나의 유저 활동을 식별하는 단계는 상기 유저가 물리적 활동에 관련되고 있는지의 여부를 결정하는 단계를 포함하고, 상기 프리페치하는 단계는, 상기 유저가 물리적 활동에 관련되고 있지 않다는 것을 결정한 이후에만 수행되는, 유저 기기 엔티티에 의해 실행되는 방법.
  12. 제1항에 있어서,
    상기 프리페치된 웹 페이지 중 적어도 하나를 렌더링하는 단계를 더 포함하는, 유저 기기 엔티티에 의해 실행되는 방법.
  13. 적어도 하나의 네트워크 엔티티에 의해 실행되는 방법으로서,
    유저 기기 엔티티로부터, 유저에 의해 방문된 웹 페이지 - 상기 방문된 웹 페이지는 복수의 링크된 웹 페이지에 대한 링크를 포함함 - 를 식별하는 정보를 수신하는 단계;
    복수의 상기 링크된 웹 페이지를 검색하여 상기 각각의 링크된 웹 페이지의 컨텐츠를 결정하는 단계;
    프리페치될 웹 페이지의 리스트 - 프리페치될 페이지의 상기 리스트는 상기 각각의 링크된 웹 페이지의 상기 컨텐츠에 적어도 부분적으로 기초함 - 를 컴파일하는 단계; 및
    상기 리스트를 상기 유저 기기 엔티티로 전송하는 단계를 포함하는, 적어도 하나의 네트워크 엔티티에 의해 실행되는 방법.
  14. 제13항에 있어서,
    상기 각각의 링크된 웹 페이지의 상기 컨텐츠를 결정하는 단계는 상기 각각의 링크된 웹 페이지의 사이즈를 결정하는 단계를 포함하고, 프리페치될 페이지의 상기 리스트는 상기 각각의 링크된 웹 페이지의 상기 사이즈에 적어도 부분적으로 기초하는, 적어도 하나의 네트워크 엔티티에 의해 실행되는 방법.
  15. 제13항에 있어서,
    상기 각각의 링크된 웹 페이지의 상기 컨텐츠를 결정하는 단계는, 상기 각각의 링크된 웹 페이지가 비디오를 포함하는지의 여부를 결정하는 단계를 포함하고, 프리페치될 페이지의 상기 리스트는 비디오를 포함하지 않는 웹 페이지만을 포함하는, 적어도 하나의 네트워크 엔티티에 의해 실행되는 방법.
  16. 제13항에 있어서,
    복수의 상기 링크된 웹 페이지에 대해, 상기 유저가 상기 링크된 웹 페이지를 방문하는 확률을 결정하는 단계를 더 포함하고,
    프리페치될 웹 페이지의 상기 리스트는, 상기 각각의 링크된 웹 페이지를 상기 유저가 방문할 확률에 적어도 부분적으로 기초하는, 적어도 하나의 네트워크 엔티티에 의해 실행되는 방법.
  17. 제13항에 있어서,
    프리페치될 웹 페이지의 상기 리스트는, 상기 리스트 상의 각각의 링크된 웹 페이지와 관련되는 복수의 프리페치 가중치를 포함하는, 적어도 하나의 네트워크 엔티티에 의해 실행되는 방법.
  18. 프로세서, 네트워크 인터페이스, 적어도 하나의 센서, 및 비일시적 컴퓨터 판독가능 매체를 포함하는 유저 기기 엔티티에 있어서,
    상기 매체는, 상기 프로세서에 의한 실행시:
    유저로부터의 입력에 응답하여, 방문된 웹 페이지 - 상기 방문된 웹 페이지는 복수의 링크된 웹 페이지를 포함함 - 를 네트워크 인터페이스를 통해 검색하도록;
    상기 유저 기기의 센서에 적어도 부분적으로 기초하여 적어도 하나의 유저 활동을 식별하도록;
    프리페치될 다수의 상기 링크된 웹 페이지를 선택하도록 - 프리페치될 페이지의 상기 선택은 상기 식별된 유저 활동에 적어도 부분적으로 기초함 - ;
    상기 선택된 웹 페이지를 네트워크 인터페이스를 통해 프리페치하도록
    동작하는 명령어를 저장하는, 유저 기기 엔티티.
  19. 제18항에 있어서,
    상기 명령어는 또한:
    복수의 상기 링크된 웹 페이지에 대한 각각의 프리페치 가중치를 결정하도록;
    상기 식별된 유저 활동에 적어도 부분적으로 기초하여 임계 가중치를 결정하도록
    동작하고,
    상기 프리페치하는 것은, 상기 임계 가중치 이상의 프리페치 가중치를 갖는 링크된 웹 페이지만을 프리페치하는 것을 포함하는, 유저 기기 엔티티.
  20. 제18항에 있어서,
    상기 프리페치 가중치는 상기 식별된 유저 활동에 적어도 부분적으로 기초하는, 유저 기기 엔티티.
KR1020167019461A 2013-12-22 2014-12-15 개인 맞춤된 캐시 또는 사전렌더링을 이용한 웹 애플리케이션 가속 KR20160101992A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201361919800P 2013-12-22 2013-12-22
US61/919,800 2013-12-22
PCT/US2014/070374 WO2015095065A1 (en) 2013-12-22 2014-12-15 Web application acceleration with personalized cache or prerendering

Publications (1)

Publication Number Publication Date
KR20160101992A true KR20160101992A (ko) 2016-08-26

Family

ID=52278829

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167019461A KR20160101992A (ko) 2013-12-22 2014-12-15 개인 맞춤된 캐시 또는 사전렌더링을 이용한 웹 애플리케이션 가속

Country Status (7)

Country Link
US (1) US20160306895A1 (ko)
EP (1) EP3084640A1 (ko)
JP (1) JP2017507385A (ko)
KR (1) KR20160101992A (ko)
CN (1) CN105849724A (ko)
TW (1) TW201537368A (ko)
WO (1) WO2015095065A1 (ko)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10706119B1 (en) 2015-04-30 2020-07-07 Tensera Networks Ltd. Content prefetching to user devices based on rendering characteristics
US10033656B2 (en) * 2015-05-21 2018-07-24 Sap Portals Israel Ltd Critical rendering path optimization
US10110661B2 (en) * 2015-10-01 2018-10-23 Verizon Patent And Licensing Inc. Server side preprocessing of web content
US10613713B2 (en) * 2015-10-07 2020-04-07 Google Llc Integration of content in non-browser applications
CN108255896A (zh) * 2017-02-06 2018-07-06 广州市动景计算机科技有限公司 网页预读方法、网页访问方法、设备及电子设备
CN109961331B (zh) * 2017-12-14 2022-09-06 北京京东尚科信息技术有限公司 页面处理方法及其***、计算机***和可读存储介质
US10909017B2 (en) * 2017-12-27 2021-02-02 Intel Corporation Latency reporting for algorithm weighting in multiagent systems
CN109213930B (zh) * 2018-07-30 2021-04-02 网宿科技股份有限公司 目标应用页面的推送信息的获取方法及电子设备
US10963532B2 (en) 2018-09-21 2021-03-30 Citrix Systems, Inc. Systems and methods for rendering weblinks inside a remote application using an embedded browser
US10963381B2 (en) * 2018-11-26 2021-03-30 Verizon Digital Media Services Inc. Dynamic caching and eviction
US10666528B1 (en) 2018-11-28 2020-05-26 Sap Portals Israel Ltd. Decoupling platform as a service providers using a service management platform
US10705955B1 (en) * 2019-01-02 2020-07-07 Baker Hughes, A Ge Company, Llc Just-in-time data provision based on predicted cache policies
US10958705B2 (en) * 2019-02-27 2021-03-23 Citrix Systems, Inc. Client computing device providing end-to-end quality of service (QoS) control for software as a service (SaaS) sessions and related methods
US11341097B2 (en) * 2019-10-16 2022-05-24 Microsoft Technology Licensing, Llc Prefetching based on historical use and real-time signals
US11275812B2 (en) * 2019-10-28 2022-03-15 Sap Se Realtime feedback-based web resource management and optimization system
CN112995246B (zh) * 2019-12-12 2022-09-23 花瓣云科技有限公司 内容获取方法、***、用户终端及内容服务器
EP4073666A1 (en) 2020-01-14 2022-10-19 Google LLC Method and system for activity prediction, prefetching and preloading of computer assets by a client-device
TWI800732B (zh) * 2020-04-08 2023-05-01 開曼群島商粉迷科技股份有限公司 適地性個人化內容提供方法與系統
US11544560B2 (en) 2020-04-10 2023-01-03 Microsoft Technology Licensing, Llc Prefetching and/or computing resource allocation based on predicting classification labels with temporal data
CN112084395A (zh) * 2020-09-25 2020-12-15 百度国际科技(深圳)有限公司 搜索方法、搜索装置、电子设备和存储介质
CN113037872B (zh) * 2021-05-20 2021-08-10 杭州雅观科技有限公司 一种基于物联网多级边缘节点的缓存和预取方法

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6993591B1 (en) * 1998-09-30 2006-01-31 Lucent Technologies Inc. Method and apparatus for prefetching internet resources based on estimated round trip time
US8775396B2 (en) * 1999-04-15 2014-07-08 Intellectual Ventures I Llc Method and system for searching a wide area network
US6742033B1 (en) * 2000-06-12 2004-05-25 Gateway, Inc. System, method and computer program product that pre-caches content to provide timely information to a user
JP2004280405A (ja) * 2003-03-14 2004-10-07 Sony Corp 情報提供システム及び情報提供方法、並びにコンピュータ・プログラム
US20090112975A1 (en) * 2007-10-31 2009-04-30 Microsoft Corporation Pre-fetching in distributed computing environments
US8265607B2 (en) * 2008-08-07 2012-09-11 Research In Motion Limited System and method for providing an interactive content portal on a mobile device
US20110173569A1 (en) * 2010-01-13 2011-07-14 Rockmelt, Inc. Preview Functionality for Increased Browsing Speed
US8874129B2 (en) * 2010-06-10 2014-10-28 Qualcomm Incorporated Pre-fetching information based on gesture and/or location
US8601052B2 (en) * 2010-10-04 2013-12-03 Qualcomm Incorporated System and method of performing domain name server pre-fetching
US9275162B2 (en) * 2011-03-22 2016-03-01 Blackberry Limited Pre-caching web content for a mobile device
US8566696B1 (en) * 2011-07-14 2013-10-22 Google Inc. Predicting user navigation events
US20130030822A1 (en) * 2011-07-25 2013-01-31 At&T Intellectual Property I, Lp Method and apparatus for selecting replacement items
US8341245B1 (en) * 2011-09-26 2012-12-25 Google Inc. Content-facilitated speculative preparation and rendering
CN102591963A (zh) * 2011-12-30 2012-07-18 奇智软件(北京)有限公司 网页内容加载控制方法及装置
US8849731B2 (en) * 2012-02-23 2014-09-30 Microsoft Corporation Content pre-fetching for computing devices
US9866652B2 (en) * 2013-01-28 2018-01-09 Telefonaktiebolaget L M Ericsson (Publ) Method, apparatus and computer program for providing a data object from a content server to a client device over a radio access network (RAN)
CN103455603B (zh) * 2013-09-03 2016-08-17 小米科技有限责任公司 网页内容缓存、网页加载方法、装置及终端设备

Also Published As

Publication number Publication date
EP3084640A1 (en) 2016-10-26
WO2015095065A1 (en) 2015-06-25
CN105849724A (zh) 2016-08-10
TW201537368A (zh) 2015-10-01
JP2017507385A (ja) 2017-03-16
US20160306895A1 (en) 2016-10-20

Similar Documents

Publication Publication Date Title
KR20160101992A (ko) 개인 맞춤된 캐시 또는 사전렌더링을 이용한 웹 애플리케이션 가속
US11758014B2 (en) Scheduling of application preloading in user devices
US11509741B2 (en) Managing mobile device user subscription and service preferences to predictively pre-fetch content
US11483415B2 (en) Background pre-rendering of user applications
CN107251525B (zh) 用于支持移动设备用户的预测内容预取服务的分布式服务器架构
US9749400B2 (en) Cooperative loading of webpages based on shared meta information
KR101689291B1 (ko) 모바일 장치에 대한 캐리어의 검출
US11516309B2 (en) Transparent pre-loading of user applications
US9854055B2 (en) Method and apparatus for providing proxy-based content discovery and delivery
US20190182114A1 (en) Endpoint-based mechanism to apply network optimization
US9967361B2 (en) Physical location influenced caching
US9585049B2 (en) Method for multipath scheduling based on a lookup table
US20100153568A1 (en) Methods, apparatuses, and computer program products for providing a local proxy for accessing web services
WO2018055506A1 (en) An optimized content-delivery network (cdn) for the wireless last mile
WO2017004489A1 (en) Sensor processing engine for mobile devices
US11477644B2 (en) Network application programming interface guided service placement
WO2018137528A1 (zh) 资源访问方法及装置
WO2019195690A1 (en) Mechanisms for service layer resource ranking and enhanced resource discovery
US20220174485A1 (en) Network application programming interface service for application guidance and control
US20140314058A1 (en) Optimizing device service availability and usage in a wireless personal network
Rosen Improving Mobile Network Performance Through Measurement-Driven System Design Approaches

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid