CN103493086A - 用于在联网环境中进行高速缓存的方法和装置 - Google Patents

用于在联网环境中进行高速缓存的方法和装置 Download PDF

Info

Publication number
CN103493086A
CN103493086A CN201280020154.6A CN201280020154A CN103493086A CN 103493086 A CN103493086 A CN 103493086A CN 201280020154 A CN201280020154 A CN 201280020154A CN 103493086 A CN103493086 A CN 103493086A
Authority
CN
China
Prior art keywords
content
cache
network
speed cache
equipment
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
CN201280020154.6A
Other languages
English (en)
Other versions
CN103493086B (zh
Inventor
乔纳森·J·布莱克
普拉莫德·B·克劳斯卡
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
IKANOS TECHNOLOGY Ltd
Ikanos Communications Inc
Original Assignee
IKANOS TECHNOLOGY Ltd
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 IKANOS TECHNOLOGY Ltd filed Critical IKANOS TECHNOLOGY Ltd
Publication of CN103493086A publication Critical patent/CN103493086A/zh
Application granted granted Critical
Publication of CN103493086B publication Critical patent/CN103493086B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • 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
    • 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
    • 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/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/2866Architectures; Arrangements
    • H04L67/289Intermediate processing functionally located close to the data consumer application, e.g. in same machine, in same home or in same sub-network
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Tourism & Hospitality (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Economics (AREA)
  • Data Mining & Analysis (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

总体上,根据本发明的方法和装置通过实现本文描述的高速缓存技术减轻了这些和其他问题。因此当家庭网络中的一个设备从给定网站下载并播放特定内容(例如,视频、歌曲)时,在网络中对该内容进行高速缓存,使得相同内容可用于在另一设备上重新播放,而不需要从互联网重新下载相同内容。

Description

用于在联网环境中进行高速缓存的方法和装置
相关申请的交叉引用
本申请要求于2011年4月25日提交的美国临时申请No.61/478,592的优先权,其内容以全文引用的方式并入本文中。
技术领域
本发明总体上涉及局域网,且更具体地涉及在联网环境(例如,局域网或家庭网络)中的高速缓存技术。
背景技术
经过历年发展,家庭网络在大小和复杂度方面都有增长。今天,通常在同一家庭中存在多个设备,它们能够播放/显示相同类型的内容(例如,一个人可以在计算机、iPhone或TV上观看在线视频,一个人可以在计算机、iPhone或专用互联网无线电收音机上收听音乐)。这些设备中的每一个都能够从互联网下载内容并播放该内容,通常是通过家庭Wi-Fi网络。也可以从家中的设备(例如,DLNA媒体播放器或MP3仓库)来播放内容。
一般而言,当诸如个人计算机、平板电脑、智能电话(例如,iPhone)之类的设备播放或显示内容时,在内容未被本地存储在存储介质上的情况下,将内容从互联网下载到特定设备上。例如,如果一个人希望在四个不同设备上观看视频片段,则想要观看
Figure BDA0000401379060000011
网站上的特定视频片段四次的这个人通常将必须从
Figure BDA0000401379060000012
网站下载/流传输该视频四次。
从最终顾客的角度来看,由于服务提供商对与网络服务相关联的带宽使用加以限制或上限,顾客正在变得对所消费的带宽量愈加谨慎。因此,对从互联网重新下载内容的需求正在变为越来越大的问题。此外,从服务提供商的角度来看,也需要降低冗余网络业务(其当前发生在由不同家庭中(in-home)设备下载相同内容时)。
从服务提供商的角度来看,存在从自助餐方式(all-you-can-eat)服务模型向“根据下载字节来确定价钱(cost-per-downloaded-byte)”的模型转变的尝试。此外,存在阻碍冗余网络业务的尝试。从服务提供商的角度来看,这两种方式都可以通过对数据下载加以每月上限来实现,由此,当到达上限时,顾客体验到降低的下载速度或完全不能下载任何附加内容。在这种情况下,多次下载相同内容/文件意味着不必要地用光了用户每月配额。此外,重复下载相同内容/文件的事实意味着为了多次传输相同内容而消耗掉了网络带宽,由此不必要地增加了网络负载和拥塞,而这是服务提供商所希望避免的。
因此,需要用于降低与数据的冗余网络访问相关联的网络带宽的技术。
发明内容
一般而言,根据本发明的方法和装置通过实现本文描述的高速缓存技术来减轻了这些和其他问题。因此当家庭网络中的一个设备从给定网站下载并播放特定内容(例如,视频、歌曲)时,该内容被高速缓存在家庭内的网络中,使得该相同内容可用于在另一设备上重新播放,而不需要从互联网重新下载相同内容。
在各种实施例中,实现了集中式或分布式高速缓存方案。该设备可以包括存储器(例如,芯片上、板上、或盘上),使得该设备可以确定是从互联网下载内容还是在所需时间限制内从高速缓存中读取所需内容。一个或多个设备存储了与高速缓存中的内容相关联的内容表。根据本发明的示例方法包括:接收用于从互联网下载多媒体内容的请求。该请求可以由任何家庭中设备使用任何现有(或完全新的)机制来产生。在从互联网下载所请求的内容之前,进行与所请求的内容是否在家庭中网络内的高速缓存中可获得相关的确定。响应于该请求,要么从家庭中网络中的高速缓存,要么从互联网提供所请求的内容。用于确定所请求的内容是否在家庭中网络中可获得的高速缓存算法可以基于集中式或分布式高速缓存方案。
根据这些和其他方案,在根据本发明的实施例的家庭中网络中实现的方法包括:接收用于从互联网下载内容的请求,在从互联网下载所请求的内容之前,确定所请求的内容是否在家庭中网络中的高速缓存中可获得,以及响应于该请求,从家庭中网络中的高速缓存之一或从互联网提供所请求的内容。
附图说明
当结合附图来回顾以下对本发明的特定实施例的描述时,本发明的这些和其他方案和特征对于本领域普通技术人员将变得显而易见,其中:
图1是实现了根据本发明的实施例的集中式高速缓存技术的示例家庭网络的框图;
图2是示出了根据本发明的实施例的示例集中式高速缓存方法的流程图;
图3是实现了根据本发明的实施例的分布式高速缓存技术的示例家庭网络的框图;
图4A和4B是示出了根据本发明的实施例的两个示例分布式高速缓存方法的流程图;以及
图5是示出了可以实现根据本发明的高速缓存技术的示例本地云的框图。
具体实施方式
现在将参考附图来详细描述本发明,将附图作为本发明的说明性示例来提供,以使得本领域技术人员能够实现本发明。请注意:以下附图和示例不意味着将本发明的范围限制为单一实施例,而是其他实施例通过互换一些或全部所述或所示元素也是可能的。此外,在可以使用已知组件来部分或完全实现本发明的特定元素的情况下,将仅描述这些已知组件中为了理解本发明所必需的那部分组件,且将省略对这些已知组件中其他部分的详细描述,以使得本发明更突出。除非本文中另行指出,否则对于本领域技术人员显而易见地是:描述为用软件实现的实施例不应受限于此,而是可以包括用硬件、软件和硬件的组合实现的实施例,且反之亦然。除非本文中另行明确声明,否则在本说明书中,不应将示出了单一组件的实施例视为是限制性的,而是本发明意在包含包括多个相同组件在内的其他实施例,且反之亦然。此外,除非另行明确声明,否则申请人不意在将本说明书或权利要求书中的任何术语解释为非常见的或特殊的含义。此外,本发明包含本文中作为示意所引用的已知组件的当前和未来的已知等价物。
在本公开的上下文中,“家庭中网络”一般指代构成了与家庭或小型办公室相关联的联网环境的任何类型的分布式通信、计算、和存储组件。针对家庭中网络内高速缓存内容,描述了各种实施例,其中,高速缓存的内容包括文件、多媒体内容和其他类型数据。尽管将具体参考家庭中网络实现来描述本发明,但是本发明的原理不局限于单个家庭或办公环境,而是如下面通过描述所意识到的,可以将本发明的原理扩展到其他类型的环境。
根据本发明的高速缓存方法和装置的实施例包括至少两个一般实现:集中式和分布式。在集中式实现中,在家庭网关(HGW)或类似设备上实现高速缓存。还可以在芯片上/板上存储器中并入查找表或索引,其向HGW指示了所需要的内容在高速缓存中是否可获得。在分布式实现中,在各种家庭中设备(膝上型计算机、路由器、转发器、iPad等等)上实现了本发明的高速缓存方案。一些或全部设备执行高速缓存一致性(cache-coherency)应用的实例,该高速缓存一致性应用可以关于HGW中的高速缓存应用,使用客户端服务器方案来实现,或使用完全分布式模型来实现。
图1是联网环境100的实施例,在联网环境100中,可以实现根据本发明的集中式高速缓存技术。如图所示,一个或多个设备104在家庭中网络102中相连,家庭中网络102提供了经由家庭网关108对互联网106的访问。通过互联网,用户可以从视频共享门户110(例如,)或其他网站下载内容,以及从互联网上的各种网站下载包括文本和多媒体内容在内的其他类型内容。
设备104可以包括个人计算机设备(例如膝上型计算机、台式计算机以及平板计算机(例如,iPad、Kindle等)(如图1所示))、网络预备电话设备(例如,智能电话(例如,iPhone和Android电话)),且还可以包括各种其他类型的媒体设备,例如支持网络的TV、互联网无线电系统、游戏设备(例如,Wii、Xbox等等)、DVR等。设备104还可以包括其他家庭网络设备,例如路由器、转发器、NAS驱动器等。设备104可以经由有线连接130(例如,以太网、电源线等)或无线连接132(例如,WiFi、Bluetooth等)连接到家庭网络102。
可以在有线或无线路由器中并入或提供家庭网关108,例如从商业供货商可获得的那些路由器,例如NetGear、Linksys、D-Link、Cisco等等。这种路由器设备通常包括传统路由功能,如本领域技术人员在受到本示例的教导之后将意识到的,这种路由器设备可以适于利用本发明的高速缓存技术一起工作。
应当注意到:可以实现本发明的家庭网络通常还包括互联网接入设备(未示出),例如DSL调制解调器,其还可以耦合到运营商或提供商网络,例如有线电视或电话网络。在这种设备包括路由器功能的一些实施例中,可以在这种设备中并入网关108。在其他实施例中,网关108和互联网接入设备被实现为分离的设备。示例将是例如来自Apple的AirportExpress之类的服务,其呈现为(assume)提供以太网接口的合适调制解调器(FiOS/DSL/其他)。
如图所示,根据本发明的高速缓存实施例,家庭网关108与传统家庭网关的不同之处在于:其还包括内容搜索模块112、高速缓存应用114、以及用于对内容进行高速缓存的存储器存储设备116。在实施例中,在板上存储器(例如,闪存/双倍数据速率(DDR)存储器)中实现存储设备116。在附加或备选实施例中,将存储设备116实现在连接到网关108设备的离板(off-board)高速设备中,例如USB2.0/USB3.0/eSATA/或其他类型盘存储器中。可以例如使用传统或专有路由器设备软件和/或固件来实现模块112和高速缓存应用114,该传统或专有路由器设备软件和/或固件已补充有如本文所述的功能。
一般而言,内容搜索模块112搜索存储设备116中高速缓存的内容,以确定设备104正在请求的内容是否可以从存储设备116而不是互联网来提供。模块112的其他示例实现细节可以从前述功能描述中收集。
一般而言,高速缓存应用114至少控制以下各方面:1)要向高速缓存分配的存储器量;以及2)高速缓存本身的内容(基于最少使用(LRU)高速缓存算法、最近使用(MRU)高速缓存算法、还是其他高速缓存算法)。高速缓存应用114还被配置为维护在设备116中可获得的内容的索引。应用114的其他示例实现细节可以从前述功能描述中收集。
下面示出了可以在高速缓存应用114中维护的示例索引。
Figure BDA0000401379060000061
如上所示,在一个示例实现中,高速缓存索引的每个条目包括4个不同元素:描述、指针、以及2个元数据集合。描述元素意在允许高速缓存应用执行在被高速缓存的内容与从设备104接收到的针对新内容的请求中的信息之间的匹配。在该示例中,描述通常包括URL的一部分(例如,www.youtube.com)。一个元数据集合可以包括可能出现在针对内容的请求中的一个或多个关键字(例如,“Lady Gaga”)。另一个元数据集合可以包括请求中可以包括的附加项目或标签(例如,分辨率400x300)。指针元素包括存储设备116中的地址。在该示例中,指针是实际存储器地址。然而,很多变型是可能的,例如文件ID和目录结构中的路径。元数据包括与被高速缓存的内容相关的附加信息,其在提供被高速缓存内容的文本或其他描述时有用。
图2是示出了根据本发明的实施例的示例集中式高速缓存方法的流程图。
在步骤S202中,设备104请求内容。例如,在设备104是运行浏览器(例如,Internet Explorer)的计算机的情况下,可以通过用户点击网页上的链接(例如,在由www.youtube.com来提供服务的页面上的内容列表)来发起针对内容的请求。响应于该点击,浏览器应用使用HTTP协议和来自内容中嵌入的链接的信息(例如,HTML)形成IP请求,并将其向网关108发送。作为另一示例,其可以由负责在高速缓存中执行查找/学习新条目的实体来“探测”。该功能可以在网关/路由器中执行。在步骤S204中,由网关使用传统路由技术来处理该请求。例如,网关108可以在路由表中查找与该请求相关联的IP地址,并确定该请求是否与远程网络位置上的内容相关联。对于针对需要从远程源获得(在步骤S204中确定)的内容(例如,来自公共网站,例如YouTube,的视频)的所有请求,在步骤S206中,搜索模块112搜索高速缓存设备116,以确定所请求的内容是否存储在设备116中。
如果未高速缓存所请求的内容,则通过在步骤S208中向互联网转发该请求,以传统方式来获得该内容。在步骤S210中,当要从互联网向设备104下载的内容正在经由网关108向设备104流传输时,由应用114将该内容也复制到设备116中的高速缓存中。当其完成时,应用114在步骤S212中更新高速缓存索引,以反映新存储的内容。
如果在步骤S204中代之以确定所请求的内容本地可获得,则由网关108在步骤S214中从高速缓存设备116向设备104流传输该内容。
图3是联网环境300的实施例,在联网环境300中,可以实现根据本发明的示例分布式高速缓存技术。
与图1所示的集中式实现相对比,在分布式实现中,一个或多个设备104被配置为执行高速缓存应用320并维护本地高速缓存322。
在设备104是运行Windows操作系统的膝上型计算机或台式计算机的实施例中,可以由设备驱动应用或浏览器插件应用来实现高速缓存应用320。例如,在设备104包括WiFi收发信机的情况下,以及当设备104第一次尝试建立与网关308的无线连接时,网关308可以自动使得设备104下载并安装包括高速缓存应用320在内的设备驱动软件。作为另一示例,可以在制造期间在设备上预先加载高速缓存应用(与设备一起提供的初始软件的一部分)。作为又一示例,可以从互联网显式下载针对该平台的高速缓存应用——要么手动(类似于为新的打印机手动下载驱动程序)要么响应于自动检测到网络中针对“高速缓存技术”的支持(类似于当新的打印机连接到膝上型计算机时下载驱动程序)。在由本示例教导之后,本领域技术人员将认识到可能取决于设备104的类型的各种实现应用320的备选方式。
一般而言,高速缓存应用320包括用于管理高速缓存322的内容、经由专有或其他协议与其他高速缓存实例通信、以及维护高速缓存索引(本地维护和/或与其他高速缓存实例共享)的功能。在由根据本发明的以下示例方法所教导之后,高速缓存应用320的实现和其他细节对于本领域技术人员将变得甚至更显而易见。
高速缓存322由设备104管理或可以管理的存储器来实现。例如,在设备104是运行Windows操作系统和Internet Explorer软件的个人计算机(例如,膝上型计算机或台式计算机)的情况下,高速缓存322可以由本地驱动器上的浏览器临时文件夹中的文件来实现。在MP3播放器的示例中,其可以存储在芯片上存储器中(要么是易失性的,在该情况下,每次接通设备时构造高速缓存;要么是非易失性的,在该情况下,构造高速缓存一次,然后在设备启动时重复使用)。如本领域技术人员将意识到的,很多备选是可能的。
如图3中还示出的,网关308包括搜索模块312、高速缓存应用314和高速缓存316。这些单元可以类似于图1所示的集中式实施例中的类似组件来实现,具有基于下述功能描述而变得显而易见的添加和改变。根据要在下面更详细描述的本实施例的各方面,如在分布式高速缓存索引304中反映的,图3还示出了高速缓存322和高速缓存316一起实现了分布式高速缓存302。
图4A和4B是示出了根据本发明的实施例的示例分布式高速缓存方法的流程图。
图4A所示的示例方法反映了根据本发明的实施例的分布式高速缓存的客户端-服务器模型实现。
在步骤S402中,设备104请求内容,其可以包括类似于上面图2中针对步骤S202描述的那些操作。在步骤S404中,由网关使用传统路由技术来处理请求,其可以包括类似于上面针对步骤S204描述的那些操作。对于针对来自远程源的内容(例如,来自例如YouTube之类的公共网站的视频)的所有请求(在步骤S404中确定的),在步骤S406中,搜索模块312搜索当前高速缓存索引304,以确定所请求的内容是否存储在分布式高速缓存302中。
如果未高速缓存所请求的内容,则通过在步骤S408中向互联网转发该请求,以传统方式获得内容。在步骤S410中,在已从互联网向设备104下载了新请求的内容之后,应用314更新高速缓存索引304,以反映新存储的内容及其在分布式高速缓存302的特定设备104中的位置。
如果在步骤S406中取而代之地确定所请求的内容在分布式高速缓存302中可获得,在步骤S412中,搜索模块312还确定所请求的内容在分布式高速缓存302中的位置,且在步骤S414中应用314使得从分布式高速缓存302向设备104流传输所请求的内容。例如,如果所请求的内容位于网关的高速缓存设备316中,应用314将简单地直接从设备316转发该内容。然而,如果所请求的内容位于另一设备104中,应用314将与设备104中的高速缓存应用320通信,并使得设备104从设备104的高速缓存322转发该内容。这可以通过在各设备104中的各个高速缓存应用320之间的通信,通过直接传输内容来完成,或经由高速缓存应用314与两个应用320的单独通信来完成。
图4B所示的示例方法反映了根据本发明的实施例的分布式高速缓存的完全分布式模型实现。
在步骤S452中,设备104请求内容,如上述步骤S202和S402一样。在步骤S454中,如在上述步骤S204和S404中描述的一样,请求由网关使用传统路由技术来处理。对于针对来自远程源的内容(例如,来自例如YouTube之类的公共网站的视频)的所有请求(在步骤S404中确定的),在步骤S456中,搜索模块312搜索当前高速缓存索引304,以确定所请求的内容是否存储在分布式高速缓存302中。
如果未高速缓存该内容,则通过在步骤S458中向互联网转发该请求以传统方式来获得该内容。在步骤S460中,在已从互联网向设备104下载新请求的内容之后,请求设备104中的应用320使得共享高速缓存索引304更新,以反映新存储的内容及其在分布式高速缓存302的特定设备104中的位置。例如,应用320可以意识到当前正在工作的所有高速缓存实例,且每个实例可以存储分布式索引的本地副本。在存储内容之后,特定设备104中的应用320可以向所有其他实例广播消息,且响应于此,各实例可以更新其索引的本地副本,以反映新存储的内容。
如果代之以在步骤S456中确定所请求的内容在分布式高速缓存302中可获得,在步骤S462中,搜索模块312还确定所请求的内容在分布式高速缓存302中的位置,且在步骤S464中,应用314向应用320通知:可以从分布式高速缓存302向设备104流传输所请求的内容,并向应用320提供内容的位置。然后,请求设备104中的应用320采取必要步骤从高速缓存302中的恰当位置获得内容。例如,如果所请求的内容位于网关的高速缓存设备316中,应用320将与应用314通信,以从设备316获得内容。然而,如果所请求的内容位于另一设备104中,应用314将与另一设备104中的高速缓存应用320通信,并使得另一设备104转发来自另一设备104的高速缓存322的内容。
根据各种实施例,无论何时将存储高速缓存内容的设备(例如,PC或膝上型计算机)关机,则可以更新共享索引,因为该内容不再可访问。
在根据本发明的分布式高速缓存的一些实施例中,还有可能从一个设备向另一个设备转移高速缓存内容。对于一些实施例,可以将通常从“远”设备访问的内容移动到“近”设备(例如,移动到网关中的高速缓存,或附近转发器、网桥、路由器等中的高速缓存)。可以例如基于跳数(例如,由特定设备的TCP报头信息中的TTL值来确定)、去往/来自该设备的带宽(例如,由设备连接的信号强度或有线还是无线来确定)、连接时延等来选择“近”设备。
在客户端-服务器模型中,可以将本文描述的转移功能并入高速缓存应用314中,其可以周期性地确定针对转移高速缓存内容和管理用于执行设备之间的转移所必要的设备通信的需求或愿望。在完全分布式模型中,每个高速缓存实例可以监视转移条件,并协调它们之间的转移动作。在受到这些示例的教导之后,本领域技术人员将意识到各种其他实现细节。
在这些和其他转移实施例中,当设备断电时,可以将一个设备的高速缓存的内容转移到中心高速缓存或其他高速缓存中。例如,在完全分布式模型实现中,应用320可以向其他高速缓存实例广播消息,且其他高速缓存实例可以确定它们是否具有足够的存储器可用,且如果具有,它们可以发起在设备之间转移内容的会话。
作为另一示例,在客户端-服务器模型中,应用314可以使用来自如下面更详细描述的各种算法的结果,来选择性地执行设备104之间的转移。具体地,如图3所示,分布式实现的示例实施例包括在网关308中包括的爬取算法352。其可以被配置为在家庭网络302中搜索媒体。例如,算法在家庭中网络102中进行“爬取”,并使用在其他位置处可获得的信息来更新分布式索引。对于一些实施例,爬取算法还在分布式高速缓存实例之间复制/移动选定内容,其中,内容以及移动的目的地由应用314中的算法来选择。
例如,在这些和其他实施例中,应用314可以被配置为跟踪每用户的首选项。然后,当特定用户登录到给定系统中时,应用314可以被配置为向恰当的高速缓存自动复制该用户“喜欢”的内容,使得该内容在“附近”可获得,由此增强体验质量(QoE)。该技术将适用于高速缓存查找和高速缓存填入机制。应当注意到:在这些和其他实施例中,对于特定用户,访问特定网站/下载特定内容将不被高速缓存。例如,当特定用户已在其浏览器(例如,Google Chrome)中启用“化装模式”时,可以关闭对内容进行高速缓存的能力。每用户首选项还可以包括始终不高速缓存的内容类型。始终不高速缓存的内容的示例可以是银行交易。
根据应用314的这些和其他实施例,可以经由设备104中包括的用户界面应用向用户提供定义针对其简档的修饰符或角色(modifieror persona)的机会。例如,用户可以指定其通常是独自观看电影(是否在家庭办公室)还是与家庭和/或朋友一起观看。此外,应用314可以确定通常何时请求所需内容,且可以在一天/一周中从互联网下载内容最便宜的时间来高速缓存和/或转移所需内容。例如,对于通常每晚9:00pm观看“Survivor”的用户,在3:00am下载一集“Survivor”。
如图3所还示出的,网关308的示例实施例包括监视模块354,其被配置为监视每个用户的浏览习惯并提供粒度数据分析。该特征允许将特定广告定向到用户等。例如,对于通常每晚9:00pm观看“Survivor”的用户,在3:00am下载一集“Survivor”。
应当注意到:可以将本发明的原理扩展到单一家庭网络之外。例如,图5示出了本地云实施例的示例,其中,本地云包括两个或更多家庭中的网络。该云可以由使用单一IP连接和若干不同有线和/或无线局域网(其使用公共网关)的网络来形成。作为另一示例,该云可以由各自具有其自己的IP连接的网关来实现,并经由有线或无线连接彼此通信。在受到这些示例的教导之后,本领域技术人员将意识到各种备选实施例。
根据各种云实施例,将本地云配置用于执行所述高速缓存技术。在使用本地云配置的情况下,单一家庭以及一个或多个“扩展”家庭(例如,任何参与的邻居、联合家庭)中的服务和设备可以耦合在一起。例如,具有四个家庭的组的媒体库将对于来自这四个家庭中的任何人是“共享”且可获得的。然而注意到:每个家庭将具有其自己的互联网连接,且还将独立地访问服务/应用。对于各种实施例,将高速缓存算法用于(a)识别家庭(或扩展家庭)中可以作为“集散地(hub)”使用的策略位置(哪里),信息通常通过该位置来传递,以及(b)识别在该位置上存储什么信息。算法还可以定义在中心集散地处要高速缓存什么内容以及多少内容。这些集散地可以体现为家庭中的各种设备,例如转发器(有线/无线)以及其他设备(PC、平板计算机、游戏主机等等)。
可以适用于与本发明一起使用的网关设备108和308的一个非限制性示例在共同待决的申请No.13/102,623中描述,其内容以全文引用的方式并入本文中。本领域技术人员将能够理解如何将本公开与该公开相结合,以实现本发明的示例实施例。
尽管以参考本发明的优选实施例来具体描述了本发明,本领域普通技术人员应当容易意识到:可以在不脱离本发明的精神和范围的情况下对形式和细节进行改变和修改。预期所附权利要求包含这种改变和修改。

Claims (33)

1.一种在网络中实现的方法,包括:
接收用于从互联网下载内容的请求;
在从互联网下载所请求的内容之前,确定所请求的内容是否在所述网络中的高速缓存中可获得;
响应于所述请求,从所述网络中的高速缓存之一或从互联网提供所请求的内容。
2.根据权利要求1所述的方法,其中,确定所请求的内容是否在所述网络中的高速缓存中可获得包括:确定所述内容是否存储在所述网络中的单一位置处的集中式高速缓存中。
3.根据权利要求1所述的方法,其中,确定所请求的内容是否在所述网络中的高速缓存中可获得包括:确定所述内容是否存储在所述网络中的多个不同位置处的分布式高速缓存中。
4.根据权利要求3所述的方法,其中,所述多个不同位置包括所述网络中的各种设备。
5.根据权利要求4所述的方法,其中,所述设备包括以下一项或多项:个人计算设备、媒体设备以及联网设备。
6.根据权利要求5所述的方法,其中,所述个人计算设备包括以下一项或多项:膝上型计算机、台式计算机、平板计算机、以及智能电话。
7.根据权利要求4所述的方法,还包括:使得每个设备执行高速缓存一致性应用的实例。
8.根据权利要求7所述的方法,其中,执行所述高速缓存一致性应用包括:维护所述分布式高速缓存的共享索引。
9.根据权利要求7所述的方法,其中,执行所述高速缓存一致性应用包括:利用所述分布式高速缓存的索引。
10.根据权利要求3所述的方法,还包括:将所述分布式高速缓存的内容从所述设备之一转移到所述设备中的另一个上。
11.根据权利要求10所述的方法,还包括:识别所述网络中用于转移所述分布式高速缓存的内容的策略位置。
12.根据权利要求10所述的方法,还包括:识别要在所述网络中的各个不同位置处存储的不同类型的信息。
13.根据权利要求1所述的方法,其中,确定所请求的内容是否在所述网络中的高速缓存中可获得包括:确定所述内容是否存储在所述网络中的多个不同位置以及在包括一个或多个附加网络在内的本地云中的多个不同位置处的分布式高速缓存中。
14.根据权利要求3所述的方法,还包括:爬取所述网络,以在从互联网下载内容之前在所述网络中搜索媒体。
15.根据权利要求13所述的方法,还包括:爬取所述网络,以在从互联网下载内容之前在所述本地云中搜索媒体。
16.根据权利要求1所述的方法,还包括:跟踪每用户首选项,以确定要在所述高速缓存中维护的内容的类型。
17.根据权利要求12所述的方法,还包括:跟踪每用户首选项,以确定要在所述高速缓存中维护的内容的不同类型。
18.根据权利要求17所述的方法,还包括:根据所述每用户首选项,向恰当设备自动复制内容。
19.根据权利要求1所述的方法,还包括:监视用户的浏览习惯并提供粒度数据分析。
20.根据权利要求1所述的方法,其中,所述网络包含家庭中网络。
21.一种在网络中实现的方法,包括:
接收用于从互联网下载内容的请求;
确定所请求的内容是否在所述网络中的高速缓存中可获得;
如果所请求的内容在所述高速缓存中不可获得,在所述高速缓存中保存所述内容。
22.根据权利要求21所述的方法,其中,所述高速缓存包括在所述网络中的多个不同设备上实现的分布式高速缓存,所述方法还包括:
在所述多个设备中的特定设备上执行高速缓存一致性应用。
23.根据权利要求22所述的方法,其中,执行所述高速缓存一致性应用包括:维护所述分布式高速缓存的共享索引。
24.根据权利要求22所述的方法,其中,执行所述高速缓存一致性应用包括:利用所述分布式高速缓存的索引。
25.根据权利要求22所述的方法,还包括:将所述分布式高速缓存的内容从所述设备之一转移到所述设备中的另一个上。
26.根据权利要求25所述的方法,还包括:识别所述网络中用于转移所述分布式高速缓存的内容的策略位置。
27.根据权利要求25所述的方法,还包括:识别要在所述网络中各个不同位置处存储的信息的不同类型。
28.根据权利要求21所述的方法,其中,所述网络包含家庭中网络。
29.一种在网络中实现的方法,包括:
接收用于从互联网下载内容的请求;
跟踪每用户首选项,以确定要在所述网络的高速缓存中维护的内容;
基于所述每用户首选项,维护所述高速缓存中的内容。
30.根据权利要求29所述的方法,其中,每用户首选项包括:指定是否应当对来自特定网站的内容进行高速缓存。
31.根据权利要求29所述的方法,其中,每用户首选项包括:指定是否应当对特定用户请求的内容进行高速缓存。
32.根据权利要求29所述的方法,其中,每用户首选项包括:指定是否应当对特定类型的内容进行高速缓存。
33.根据权利要求29所述的方法,其中,所述网络包含家庭中网络。
CN201280020154.6A 2011-04-25 2012-04-25 用于在联网环境中进行高速缓存的方法和装置 Expired - Fee Related CN103493086B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201161478592P 2011-04-25 2011-04-25
US61/478,592 2011-04-25
PCT/US2012/035031 WO2012149043A2 (en) 2011-04-25 2012-04-25 Method and apparatus for caching in a networked environment

Publications (2)

Publication Number Publication Date
CN103493086A true CN103493086A (zh) 2014-01-01
CN103493086B CN103493086B (zh) 2018-01-02

Family

ID=47022123

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201280020154.6A Expired - Fee Related CN103493086B (zh) 2011-04-25 2012-04-25 用于在联网环境中进行高速缓存的方法和装置

Country Status (6)

Country Link
US (2) US8972517B2 (zh)
EP (1) EP2702550A4 (zh)
JP (1) JP6234919B2 (zh)
KR (1) KR101922607B1 (zh)
CN (1) CN103493086B (zh)
WO (1) WO2012149043A2 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014519636A (ja) * 2011-04-25 2014-08-14 イカノス・コミュニケーションズ・インコーポレイテッド ネットワーク化環境においてキャッシュするための方法および装置
CN107615260A (zh) * 2015-10-22 2018-01-19 甲骨文国际公司 用于在事务处理环境中提供分布式高速缓存的系统和方法

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9843603B2 (en) * 2012-10-16 2017-12-12 Dell Products, L.P. Techniques for dynamic access control of input/output devices
CN103152653A (zh) * 2013-02-05 2013-06-12 东莞宇龙通信科技有限公司 流媒体文件播放的方法及其系统
JP6112894B2 (ja) * 2013-02-15 2017-04-12 三菱電機株式会社 コンテンツ配信システムおよびコンテンツ取得蓄積装置
US9929876B2 (en) * 2013-03-15 2018-03-27 Kortek Industries Pty Ltd Adaptable multi-mode wireless power, light and automation
CN105594177B (zh) 2013-06-06 2019-03-08 谷歌有限责任公司 用于呈现媒体内容的系统、方法以及介质
EP3123440B1 (en) * 2014-03-23 2018-12-26 Opanga Networks, Inc. Controlling the pre-delivery of content to a mobile device
KR101630640B1 (ko) * 2014-08-05 2016-06-15 엔트릭스 주식회사 클라우드 스트리밍 서비스 시스템, 클라우드 스트리밍 서비스 방법 및 이를 위한 서버
US20170041429A1 (en) * 2014-09-26 2017-02-09 Hewlett Packard Enterprise Development Lp Caching nodes
US10171519B2 (en) * 2014-10-16 2019-01-01 Verizon Patent And Licensing Inc. Session transfer protocol between different browsers on different devices
JP6384271B2 (ja) * 2014-10-29 2018-09-05 富士通株式会社 機器管理中継装置、方法、およびプログラム
KR101888846B1 (ko) * 2015-05-07 2018-08-16 에스케이테크엑스 주식회사 클라우드 스트리밍 서비스 시스템, 리시프로컬 캐시를 이용한 이미지 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
CN104965855A (zh) * 2015-05-29 2015-10-07 董遂武 一种提供网页服务的网页缓存管理系统
CN105516787B (zh) * 2015-12-09 2019-07-12 深圳Tcl数字技术有限公司 应用缓存数据的存储控制方法及装置
WO2017170161A1 (ja) * 2016-03-31 2017-10-05 京セラ株式会社 ネットワーク装置
US11716440B2 (en) * 2017-05-02 2023-08-01 Harman International Industries, Incorporated Portable hub with digital video recorder
US10887161B1 (en) * 2017-10-16 2021-01-05 Wells Fargo Bank, N.A. Multi-device interface application
US11106756B2 (en) * 2019-06-14 2021-08-31 International Business Machines Corporation Enhanced browser tab management

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6917960B1 (en) * 2000-05-05 2005-07-12 Jibe Networks Intelligent content precaching
CN1838601A (zh) * 2005-03-25 2006-09-27 微软公司 用于分布式信息管理的方法和装置
CN1879081A (zh) * 2003-11-04 2006-12-13 汤姆森许可贸易公司 用于下载服务的热点处的高速缓存服务器
US20110082924A1 (en) * 2009-10-06 2011-04-07 Openwave Systems Inc. Managing network traffic by editing a manifest file

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5870552A (en) * 1995-03-28 1999-02-09 America Online, Inc. Method and apparatus for publishing hypermedia documents over wide area networks
US5878410A (en) * 1996-09-13 1999-03-02 Microsoft Corporation File system sort order indexes
SE9700622D0 (sv) * 1997-02-21 1997-02-21 Ericsson Telefon Ab L M Anordning och metod vid datanät
US6167438A (en) * 1997-05-22 2000-12-26 Trustees Of Boston University Method and system for distributed caching, prefetching and replication
US6205481B1 (en) * 1998-03-17 2001-03-20 Infolibria, Inc. Protocol for distributing fresh content among networked cache servers
JP2000155712A (ja) * 1998-11-19 2000-06-06 Nippon Telegr & Teleph Corp <Ntt> 分散キャッシュ配送方法及び分散キャッシュ配送プログラムを記憶した媒体
US6442601B1 (en) * 1999-03-25 2002-08-27 International Business Machines Corporation System, method and program for migrating files retrieved from over a network to secondary storage
US6760756B1 (en) * 1999-06-23 2004-07-06 Mangosoft Corporation Distributed virtual web cache implemented entirely in software
US6807606B2 (en) * 2000-12-18 2004-10-19 International Business Machines Corp. Distributed execution coordination for web caching with dynamic content
US6961825B2 (en) * 2001-01-24 2005-11-01 Hewlett-Packard Development Company, L.P. Cache coherency mechanism using arbitration masks
US7146429B2 (en) * 2001-03-16 2006-12-05 The Aerospace Corporation Cooperative adaptive web caching routing and forwarding web content data requesting method
JP3812727B2 (ja) 2001-12-11 2006-08-23 日本電気株式会社 情報処理システム
US7509393B2 (en) * 2001-12-19 2009-03-24 International Business Machines Corporation Method and system for caching role-specific fragments
JP2004127189A (ja) * 2002-10-07 2004-04-22 Matsushita Electric Ind Co Ltd ゲートウェイ装置、コンテンツ転送システム及びコンテンツ転送方法
US7159103B2 (en) * 2003-03-24 2007-01-02 Infineon Technologies Ag Zero-overhead loop operation in microprocessor having instruction buffer
KR100592654B1 (ko) 2004-06-16 2006-06-26 주식회사 팬택 이동통신단말기의 웹페이지 제공장치 및 그 제공방법
US7913250B2 (en) * 2005-11-16 2011-03-22 Microsoft Corporation Automated state migration while deploying an operating system
US8386744B2 (en) * 2007-10-01 2013-02-26 International Business Machines Corporation Thin provisioning migration and scrubbing
WO2009068952A2 (en) * 2007-11-30 2009-06-04 Telefonaktiebolaget L M Ericsson (Publ) Method, network, and node for distributing electronic content in a content distribution network
US7697557B2 (en) * 2007-12-26 2010-04-13 Alcatel Lucent Predictive caching content distribution network
JP5176835B2 (ja) * 2008-09-29 2013-04-03 ブラザー工業株式会社 監視装置、情報処理装置、情報処理方法並びにプログラム
US8195878B2 (en) * 2009-02-19 2012-06-05 Pmc-Sierra, Inc. Hard disk drive with attached solid state drive cache
JP5532649B2 (ja) * 2009-03-27 2014-06-25 ブラザー工業株式会社 ノード装置、ノード処理プログラム及びコンテンツ保存方法
US20110040893A1 (en) * 2009-08-14 2011-02-17 Broadcom Corporation Distributed Internet caching via multiple node caching management
US20110107030A1 (en) * 2009-10-29 2011-05-05 Simon Borst Self-organizing methodology for cache cooperation in video distribution networks
WO2011140439A1 (en) 2010-05-06 2011-11-10 Ikanos Technology Ltd. Method and system to configure and manage broadband-enabled digital command and control systems
US9384199B2 (en) * 2011-03-31 2016-07-05 Microsoft Technology Licensing, Llc Distributed file system
EP2702550A4 (en) * 2011-04-25 2014-10-01 Ikanos Communications Inc METHOD AND APPARATUS FOR CACHING IN A NETWORK ENVIRONMENT

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6917960B1 (en) * 2000-05-05 2005-07-12 Jibe Networks Intelligent content precaching
CN1879081A (zh) * 2003-11-04 2006-12-13 汤姆森许可贸易公司 用于下载服务的热点处的高速缓存服务器
CN1838601A (zh) * 2005-03-25 2006-09-27 微软公司 用于分布式信息管理的方法和装置
US20110082924A1 (en) * 2009-10-06 2011-04-07 Openwave Systems Inc. Managing network traffic by editing a manifest file

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2014519636A (ja) * 2011-04-25 2014-08-14 イカノス・コミュニケーションズ・インコーポレイテッド ネットワーク化環境においてキャッシュするための方法および装置
CN107615260A (zh) * 2015-10-22 2018-01-19 甲骨文国际公司 用于在事务处理环境中提供分布式高速缓存的系统和方法
US11050840B2 (en) 2015-10-22 2021-06-29 Oracle International Corporation System and method for utilizing a distributed in-memory data grid to implement typed buffer caching services for a transactional processing environment

Also Published As

Publication number Publication date
KR101922607B1 (ko) 2018-11-27
US8972517B2 (en) 2015-03-03
WO2012149043A3 (en) 2013-01-03
US20120271904A1 (en) 2012-10-25
EP2702550A2 (en) 2014-03-05
JP2014519636A (ja) 2014-08-14
US20150172409A1 (en) 2015-06-18
KR20140025480A (ko) 2014-03-04
EP2702550A4 (en) 2014-10-01
CN103493086B (zh) 2018-01-02
WO2012149043A2 (en) 2012-11-01
JP6234919B2 (ja) 2017-11-22

Similar Documents

Publication Publication Date Title
CN103493086A (zh) 用于在联网环境中进行高速缓存的方法和装置
US10367882B2 (en) Offline content distribution networks
CN101658012B (zh) 内容递送
CN102271148B (zh) 内容中心网络的终端以及终端与集线器的通信方法
US8527549B2 (en) Cloud based operating and virtual file system
CN103457993B (zh) 本地缓存装置和提供内容缓存服务的方法
CN101764726B (zh) 增强的内容共享框架
CN107251524A (zh) 管理预测预取内容的移动设备用户订购和服务偏好
KR20110056288A (ko) 근거리 네트워크에서의 장치 의존 전송
US20080228854A1 (en) Method for Controlling a Multimedia Device from a Mobile Terminal, Corresponding Computer Programs, Multimedia Device and Server
CN102594879A (zh) 媒体内容位置知晓和决策制定
CN101729442A (zh) 一种实现内容共享的方法和装置
CN103152379A (zh) 管理多媒体内容的方法和装置
CN103455439B (zh) 本地缓存装置以及用于提供内容缓存服务的系统和方法
US8280357B2 (en) Information sharing after proximity connection has ended
KR20170048924A (ko) Dsp/ssp간 타겟팅 정보 매핑 방법 및 dsp/ssp간 타겟팅 정보가 매핑된 dsp 서버
CN104378410A (zh) 一种微型私有云存储、传输的系统及方法
WO2007135627A2 (en) Mobile phone used within a client-server system
CN102387201A (zh) 业务数据处理的方法、装置和系统
Alioua et al. Incentive edge caching in software‐defined internet of vehicles: A Stackelberg game approach
CN104581421A (zh) 一种点对点流媒体下载方法及节点终端装置
CN109716731A (zh) 用于提供可靠和高效数据传送的系统和方法
JP2010129084A (ja) デジタルコンテンツを分散共有するデジタルコンテンツ提供装置およびその方法
CN105872634A (zh) 视频数据共享的方法及装置
US20120303441A1 (en) Computer-readable medium storing information processing program, and information processing apparatus, system, and method

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20180102

Termination date: 20190425

CF01 Termination of patent right due to non-payment of annual fee