This was an interesting session that started with the different models that customers are following when it comes to branch offices:
- Centralized
- Distributed
With the centralized model, one of the biggest issues is performance across the WAN with high latency and typically still a high price. When customers follow the distributed model, they usually place infrastructure roles (print, DNS, DHCP, domain controllers) and LOB apps in the branch.
Microsoft has a commitment to improve the branch office deployment scenarios and does this on three levels:
- Improve the protocols
- Provide different features for servers in a branch (e.g. RODC)
- WAN optimization
The protocols were already improved in Windows Vista and Windows Server 2008 with the new TCP/IP stack and features such as the auto-tuned TCP Receive Window Size. They actually made the protocols aware of the underlying network conditions to adjust the behavior accordingly.
On the application level (and here that means SMB or CIFS) we have SMB 2.0 for a while now. SMB v2.0 performs less roundtrips, puts multiple commands in a single packet and makes parallel requests to improve performance.
Functionality on top of the application level will be improved in Windows 7 with a new mode for Offline Files called “Usually Offline”. In this mode, your offline files are transparently synchronized in the background at fixed intervals. These intervals can be configured by the administrator.
The most interesting feature that was discussed was actually BranchCache. BranchCache is a Windows 7 / Windows Server 2008 R2 feature that caches files that are retrieved over the WAN for speedier retrieval afterwards. BranchCache has two modes:
- Distributed
- Hosted Cache
In the distributed mode, clients running Windows 7 work together. When a client gets a file from the main office across the WAN, the client stores this file on its file system and a unique ID is returned. When a second client tries to get the file from the main office, that client gets the unique ID from the server and multicasts that ID on the local subnet to check if other clients have that same file in their cache. If they have, they retrieve the file from a local client.
Note that for this to work, the clients need to be in the same subnet. The clients still have to go across the WAN to issue a request in order to retrieve the unique file ID from the remote server and to make sure that the user retrieving the file is authorized.
With the hosted cache mode, you actually have a server in the branch office that caches the content instead of have the cache distributed among clients in the branch.
Note that BranchCache works with file server and HTTP/HTTPS content.
The session went on with a couple of other new features in Windows Server 2008 R2:
- ReadOnly DFS replicas: to prevent accidental deletes of files and complete directories at a branch
- Server Core: .NET support for Server Core to run applications and things like SCCM distribution points.
To end, they discussed WAN Optimization Controllers from Citrix and Cisco that run Windows Server and also provide things such as DNS, DHCP, RODC, print, etc… This actually makes a hybrid scenario possible where LOB apps are centralized but access is accelerated using these controllers. At the same time, the controllers provide infrastructure services that are still useful in the branch.
It was an interesting session that provided useful information, especially about the new BranchCache feature.



