What is BranchCache?

来源:互联网 发布:财报数据下载网站 编辑:程序博客网 时间:2024/06/06 08:38

Many organizations have distributed environments, with users at remote locations connected via fairly slow, high latency links. It's often a challenge for users at these locations to access data at the hub locations, with end users experiencing slow access. BranchCache aims to improve this experience by allowing data downloaded by one client at a remote location to be accessible to all clients in that location in one of two ways.

很多公司都有分布式环境,很多用户会从较远的地方通过慢速高延迟的连接访问。这样速度肯定很慢啦。而BranchCache 可以改善用户体验,只要这个区域有一个client下载过某个内容,这个区域的其他人都可以很快的下载了。BranchCache 有两种方式:

  • Hosted Cache—With hosted cache, one server at each location has the BranchCache feature installed and enabled. This server will cache data on behalf of the entire remote site. All clients query this server to see if the server has a copy of the required data. When the data isn't available on the server, the client will download directly from the source server and then offer the data to the BranchCache local server to see if it wants to cache it.
  • 有主机的cache-有一个服务器提供cache服务,这个服务器负责整个区域,所有的clients在下载某内容前,都先到这个服务器上去查询是否有相同内容,如果有就从服务器下载,如果没有就直接从原来的source下载,然后把内容给服务器看它是否需要缓存这个内容。
  • Distributed Cache—With distributed cache, there's no dedicated server to store the data. Each machine in the location has its own local cache for data it downloads. When a client wants to download data from the source server, it sends out a broadcast on the local subnet to see if any machine has the data cached. If any local machine has the data, it will send it to the requesting machine.
  • 分布式cache- 没有一个服务器用来担任cache的职责,这个区域的每个机器都提供一部分缓存,当一个client想下载某内容时,它就广播这个需求,看看有没有那个附近的机器缓存过该内容,如果某个机器有,则那个机器会把内容发到请求的机器。

In both modes, the source server is still contacted to obtain hash values for the data that's requested. It is through the hash values that clients can request data from its peers or the caching server. Because the hash identifies the data based on content, the use of the hash stops clients from obtaining outdated cached data from the BranchCache. If the data changes on the source, a new hash is generated.

在以上两种方式下,client都还是要访问内容的原始站点,去得到要下载内容的hash值,通过该hash值去查询cache中有无相同内容。因为hash是基于内容生成的,所以还可以知道内容是不是被更新过,如果内容改变了,会生成新的hash值。

Note that only data that has a hash value can be cached using BranchCache. 

注意:只有当内容有hash值时才能被branchcache

0 0
原创粉丝点击