Win 2008 R2實戰之Branch Cache入門

這天,Contoso公司的廣州辦又抱怨工做時間訪問總部的文件服務器很慢,常常沒法正常打開共享文件。IT部接到抱怨後,開始分析廣州辦的網絡使用狀況,結果發現,除了平常互聯網應用外,你們訪問總部文件服務器的時候,常常須要下載相同的文件,這樣重複性的訪問,加劇了廣州辦原本就不寬鬆的網絡負載壓力。IT經理讓你們出謀劃策,看如何解決既知足廣州辦訪問互聯網的需求,又能加速訪問總部文件服務器的速度。小趙沉思幾秒,脫口而出:試試Windows Server 2008 R2的Branch Cache吧。html

1、 Branch Cache 簡介web

也許你們的公司會出現這樣一種狀況:總部的員工訪問總部的文件服務器快速高效,由於他們處於局域網中。但對於遠程分支機構辦公的員工,訪問總部的文件就沒那麼走運了,在網絡應用高峯時期,使用一個稍微大一些的文檔,須要花費幾分鐘甚至幾十分鐘的時間。即便網絡應用負載不高,廣域網的穩定性及速率也不盡人意。這樣的下降分支機構的員工的工做效率,讓人很不爽。緩存

Branch Cache正是爲此而設計的。當在Windows 7和Windows Server 2008 R2上啓用了Branch Cache後,總部的web和文件服務器內容在分支機構請求訪問時被緩存到分支本地網絡,當該分支的另外一客戶端請求訪問相同內容時,通過總部服務器的驗證受權後,則能夠直接從分支本地網絡訪問它。服務器


2、 Branch Cache的緩存模式網絡

Branch Cache的緩存模式分爲兩種:分佈式緩存和託管式緩存。如圖1
 併發

圖1分佈式

託管式緩存(Hosted Cache mode)須要Branch Cache功能被部署在分支機構的Windows Server 2008 R2上,當Windows 7客戶端第一次從總部服務器中訪問數據時,會先經過廣域網獲取數據,同時也被緩存服務器緩存,當分支機構又有訪問相同數據的請求時,總部服務器只返回數據的哈希值,而由緩存服務器來提供數據訪問需求。ide

分佈式緩存適用於分支機構少於50個員工的狀況,它不須要單獨的服務器提供緩存,而是利用被配置成分佈式緩存模式的Windows 7客戶端爲其餘通過驗證的Windows 7客戶端提供已緩存的請求數據。可是此模式經過組播請求數據的時候,不能跨越子網。另外,當分支機構能夠提供內容緩存的Windows 7客戶端離線或者不可用時,將沒法提供內容給請求客戶端。this

注意:一個客戶端不能同時使用託管和分佈式緩存。若是客戶端被配置成託管緩存模式,那將不會維持本地緩存內容。若是客戶端被配置成分佈式緩存模式,那它不會聯繫本地託管模式的Branch Cache的服務器加密


3、 託管緩存是如何工做的

圖2描述了託管緩存模式,並提供了文件緩存和檢索過程的簡要說明。
 

圖2

具體工做過程以下:

1. 分支機構的Windows 7客戶端鏈接到運行Windows Server 2008 R2的總部數據中心,請求所需內容,這個過程與不使用Branch Cache獲取內容時同樣。

2. 數據中心服務器對客戶端進行驗證,並驗證其是否有權訪問數據。若是驗證成功,數據中心服務器將使用原來的通訊通道返回一個內容元數據,而不是內容自己。

3. 客戶端A使用元數據中的標識符(哈希值)搜索本地託管模式的Branch Cache的服務器。因爲尚未客戶端檢索過該內容,它尚未被緩存到分支本地網絡。所以,客戶端A會直接從總部數據中心檢索內容。

4. 客戶端A從總部數據中心下載到內容後,與託管緩存服務器創建SSL鏈接,併發送內容標識符。

5. 緩存服務器鏈接到客戶端A,檢索緩存,下載內容並存儲在緩存池中。

6. 客戶端B在總部數據中心請求相同的內容時,數據中心驗證用戶並返回內容標識符。

7. 客戶端B就使用這些標識符向託管緩存服務器請求內容。託管緩存服務器加密數據併發送給客戶端B。

8. 客戶端B解密數據,並校驗收到的緩存內容的哈希值,與總部數據中心提供的值進行比較。確保得到的內容沒有被修改。


4、 分佈緩存是如何工做的

圖3描述了分佈緩存模式,並提供了文件緩存和檢索過程的簡要說明。
 

圖3

分佈緩存請求數據的過程與託管緩存相似,除了被請求的數據發送到內部網絡的客戶端中,而且不須要緩存服務器

1. 分支機構的Windows 7客戶端鏈接到運行Windows Server 2008 R2的總部數據中心,請求所需內容,這個過程與不使用Branch Cache獲取內容時同樣。

2. 數據中心服務器對客戶端進行驗證,並驗證其是否有權訪問數據。若是驗證成功,數據中心服務器將使用原來的通訊通道返回一個內容元數據,而不是內容自己。

3. 客戶端使用內容元數據中的標識符在分支本地網絡搜索。因爲尚未客戶端檢索過該內容,它尚未被緩存到分支本地網絡。所以,客戶端A會直接從總部數據中心檢索內容並緩存到客戶端本地。

4. 客戶端B也從總部數據中心請求相同的內容。數據中心也對客戶端進行驗證和受權,像沒有啓用Branch Cache同樣。若是驗證成功,也會返回一個請求內容的元數據。

5. 客戶端B在分支本地網絡使用WS-Discover組播協議請求數據內容。

6. 客戶端A使用SSL加密通道將已緩存的內容數據發送給客戶端B。

7. 客戶端B解密數據,並校驗收到的緩存內容的哈希值,與總部數據中心提供的值進行比較。確保得到的內容沒有被修改。

關於Branch Cache的元數據:爲了能確保傳遞正確的內容給發出請求的客戶端,啓用了Branch Cache的服務器會使用哈希值來肯定內容。當用戶訪問啓用了Branch Cache的文件或web服務器時,會返回給用戶一個SHA-256的哈希值,而不是內容自己的哈希值。因爲這個元數據值小於真實內容的數千倍,因此大大下降了經過廣域網鏈路的數據量。

總結:經過上面的描述,想必你們對Branch Cache已經有必定了解了。下一篇,將開始在Contoso公司的廣州辦部署Branch Cache,看看它究竟是如何解決廣州辦員工的煩惱的。

相關文章
相關標籤/搜索