‘Seeding’ the BranchCache client cache can be a useful way to help manage the transfer of data to a badly connected site.
Imagine you need to re-image all the machines at a remote location at the end of a limited bandwidth connection. Using this method, you can take the files that you need from the server, export them to a USB or other media, then use that to ‘seed’ the Cache on one of the remote client machines.
When the other BranchCache client at the remote location need to access that data all they will need to download over the WAN, from the remote content server, is the Content Information. Once they have this they can make a broadcast request on the LAN for the content and download from the “Seeded” BranchCache peer. This massively reduces WAN traffic and time to download the Content.
The following commands are all Power Shell native cmdlets. For more information Get-Help
On the content Server
1. Stage the content using PowerShell (This may take some time depending on size)
Publish-BCWebContent -Path c:\inetpub\wwwroot\MyBigWIMFile.WIM -StageData -StagingPath c:\temp
2. Export the content to a package (creates a handy .zip file in the -Destination folder named PeerDistPackage.zip)
Export-BCCachePackage -StagingPath c:\temp -Destination c:\MyBCPackage
On the Client
3. Import the .zip package that you created in Step 2 above (and, in this example copied to the local Temp directory path as shown)
Import-BCCachePackage -Path C:\temp\pkg\PeerDistPackage.zip
Done! The content and hashes are now in the client cache ready for access by other computers.