locked
Branch Cache - files that are regularly updated RRS feed

  • Question

  • Hi - I've been looking at Branch Cache as part of general work on WAN Acceleration technologies.

    We have quite a number of files where a user may make small changes over time, adding some client notes for instance. In the context of a WAN Acceleration solution, the cache for these solutions works on the basis that, once the file is cached, only the changes to a file are sent across the network, therefore the amount of data is quite small.

    How does BranchCache work in the scenario - does the whole file get transmitted each time changes are made?

    many thanks

    Michael

    Thursday, March 17, 2011 9:24 AM

Answers

  • Hi Michael -

    I queried the BranchCache product team about this for you, and following is their reply:

    BranchCache has a two level content chunking scheme.  First, large files are divided into segments, which reach 32 MB in size.  A segment is a unit of discovery.  When downloading a large file, a client will search for one segment (32 MB) at a time.  These segments are further divided into blocks, which are 64KB in size.  After finding a peer with a segment of content, a BranchCache client will download data block by block.  Both segments and blocks have identifiers based on hashes calculated over the content.

     

    If you make a small insertion at the beginning of a file, it will likely move all the content along in the file, creating new block and segment boundaries, and new block and segment identifiers.  Most of the cached data will likely be invalidated.  If you append data to a file, only the last segment and block will be affected.  The old segments will remain valid.  If you make an in place change, without adding new content, only the cached segments and blocks touched by the change will be invalidated.

    Thanks -


    James McIllece
    Thursday, March 24, 2011 7:29 PM

All replies

  • Hi Michael -

    I queried the BranchCache product team about this for you, and following is their reply:

    BranchCache has a two level content chunking scheme.  First, large files are divided into segments, which reach 32 MB in size.  A segment is a unit of discovery.  When downloading a large file, a client will search for one segment (32 MB) at a time.  These segments are further divided into blocks, which are 64KB in size.  After finding a peer with a segment of content, a BranchCache client will download data block by block.  Both segments and blocks have identifiers based on hashes calculated over the content.

     

    If you make a small insertion at the beginning of a file, it will likely move all the content along in the file, creating new block and segment boundaries, and new block and segment identifiers.  Most of the cached data will likely be invalidated.  If you append data to a file, only the last segment and block will be affected.  The old segments will remain valid.  If you make an in place change, without adding new content, only the cached segments and blocks touched by the change will be invalidated.

    Thanks -


    James McIllece
    Thursday, March 24, 2011 7:29 PM
  • James or anyone, 

    I still have not have received a definitive answer and perhaps this is not the appropriate place; but I will ask here and hopefully someone will respond:

    Scenario: A client in a branch office utilizing BranchCache to retrieve a resource or file. The Client makes a change to that file and saves it to the BranchCache Server. How is that change replicated back to the File Server it was initially downloaded from. In Essence, is it like DFS and the change is automatically distributed and how are revision numbers handled within BranchCache. 

    Second Scenario: Multiple offices, within BranchCache, make changes to the same file. How is that replicated and how is revision control implemented. Especially, if the Cached file is on a low reliability WAN and the changes are made in offline caches. 

    Sunday, March 27, 2016 9:10 PM
  • So I think you're misunderstanding how BranchCache works here..

    Scenario 1 - the File Server IS the BranchCache server - it has to be in order to BranchCache.. No content is replicated anywhere automatically in BranchCache. SharePoint or OneDrive4Business may do this but no BC.

    Scenrio 2 - Same again, this isn't how BranchCache works, it doesn't do any replication.

    I suggest you read some BranchCache documentation to better understand the technology.

    http://2pintsoftware.com/microsoftbranchcache 

    cheers

    Phil


    Phil Wilcock http://2pintsoftware.com @2pintsoftware

    Monday, March 28, 2016 2:49 PM