如今有許多的企業都有在各地設立分公司或是辦事處,并且通過網絡專線讓所有分支機構能夠與總公司進行連接,以便于進行各種跨地域甚至跨國界的協同辦公。可是,在許多情況下卻可能因分支機構與總公司間的網絡連接帶寬不足,給協同辦公帶來的障礙,而這些所謂的障礙,往往都與分公司網絡不斷頻繁地從總公司網絡進行文件下載有密切的關聯。
因 此, 從Windows Server 2008 R2與Windows 7操作系統開始,便提供了全新的Server/Client集成應用技術,那就是所謂的分支緩存服務架構(BranchCache)下,此技術將徹底改進企業分支網絡,在取得來自總公司服務器上重復性數據(包括 了 HTTP、HTTPS、SMB數據)時的處理性能,并且真正降低總公司與分公司間WAN帶寬的使用量。在安全性的考慮設計部分,則提供了全程文件數據傳送間的加密處理(服務器至客戶端)。

圖1 分布式緩存模式
在BranchCache架構設計中,提供了兩種緩存架構模式來選擇,分別是分布式緩存模式(Distributed Mode)和托管式緩存模式(Hosted Caching)。其中分布式緩存模式架構對于客戶端重復性的數據下載,將會自動由已下載過擁有相同數據的分布式緩存客戶端計算器上來立即就近取得。至于在托管式緩存架構下,則是直接在分公司的網絡中,預先配置一部用來自動保存緩存數據的主機(自動連接與同步總公司的緩存屬性主機),以提供分公司客戶端計算器對于重復性數據取得的速度與效率。
請注意!目前只有大于64B的文件才會被緩存下來。
接下來讓我們來了解一下這兩種緩存架構模式的運作方式。首先,在分支緩存中的分布式緩存架構模式,位于總公司的內容服務器必須是Windows Server 2008 R2,而位于分公司的客戶端則可以是Windows 7或是Windows Server 2008 R2。
如圖1所示,當我們在分公司將兩部客戶端的Windows 7皆啟用了分布式緩存模式功能之后,只要這兩部的任一客戶端從總公司的內容服務器(比如網站)第一次下載文件,這些文件便會被緩存至本地計算器的緩存保存區中。接下來,一旦另一部分布式緩存客戶端連接到總公司的內容服務器下載相同文件時,便會在相同網絡區域中搜尋已完成下載緩存的數據。
至于在分支緩存中的托管式緩存架構模式下,如圖2所示,位于總公司的內容服務器與位于分公司的托管緩存主機都必須是Windows Server 2008 R2,位于分公司的客戶端則必須是Windows 7。當任意一部托管式緩存的客戶端第一次從總公司下載數據時,這些數據便會被發布至分公司的托管式緩存的服務器中保存,只要其他托管式緩存客戶端連接到總公司的內容服務器上下載相同數據時,系統將會自動搜尋位于托管式緩存服務器中的緩存屬性并迅速完成下載。

圖2 托管式緩存模式
在Microsoft許 多IT解決方案中,像是System Center Configuration Manager,都會善用由Windows Server內置所提供的BITS(Background Intelligent Transfer Service)服務,也就是所謂的智能型背景傳送服務,來讓許多文件數據間的傳遞工作達到最有效的運作,例如它可以讓傳遞過程當中發生中斷的文件,在下一次恢復連接之后進行續傳,而不需要整個文件從頭下載一遍。
由此可知,所謂的托管式緩存,就是在分公司的網絡中,架設一部專責的緩存服務器,用于就近服務分公司中所有緩存客戶端對于重復性數據的下載需求。
關于BranchCache的架構設計,讓筆者想起了同樣是Microsoft發行的另一項防火墻產品ISA Server(新版本稱之為TMG)提供的階層式緩存機制,不過它并不支持SMB數據(只針對網頁數據),并且重點是在網絡的安全防護上,因此與BranchCache服務有著不同的應用狀況。