一、概述
雖然網際網路網路傳輸的資料量巨大,但是其中大部分傳輸來自使用者在任一既定地點上對相同內容的需求,這意味著廣域網大部分基礎設施傳輸著完全相同的內容和完全相同的需求,web 上的大量通訊流都是冗餘的,網路緩衝技術就是將這些被頻繁訪問的資訊,總是放在靠近訪問者一方的技術,使網路內容局域儲存從而更迅速地為使用者服務,並減少廣域網連線和網路伺服器的傳輸數量。
wccp (web cache communication protocol )是一種快取記憶體技術協議,是路由器與快取引擎cache engine 之間的通訊協議,其中快取引擎是作為web 快取的專用裝置,用來管理儲存web 頁面。路由器通過與快取引擎的協同工作處理web 資料流,達到提高資料傳輸效率、縮短web 訪問時間的目的,這些web 資料流包括來自網路內部或外部的使用者瀏覽web 伺服器上頁面和圖形的請求,以及 伺服器對這些請求的答覆。當使用者向internet 上的 伺服器發出瀏覽某頁面的請求時,路由器首先把請求發給快取引擎,如果快取引擎已經儲存了這個頁面的拷貝,則由快取引擎直接將這個頁面發給使用者,否則快取引擎就到web 伺服器上取得這個頁面和這個頁面上的所有物件,自己儲存乙份備份後再**給使用者,此後當使用者對相同的網頁提出訪問請求時,就由網路快取引擎來滿足其要求,將已儲存該網頁的拷貝傳送給使用者。
二、wccp 技術特點及應用
wccp 協議定義了路由和快取引擎之間透明重定向的機制,在網路快取引擎中實現負載分配的方法、**方式的協商等等各個方面,這裡只介紹wccp 主要的技術特點和應用。
特點:
1、支援動態服務與標準服務
wccp 支援將多種tcp 埠的資料流重定向到快取引擎。wccp 除了支援把tcp埠為80 的http 資料流重定向到快取引擎的標準服務外,還支援將把tcp 埠為非80 的http 資料流重定向到快取引擎的動態服務。
2、支援多路由器
wccp 允許系列快取引擎連線到若干路由器上,提供冗餘和分布式的結構。wccp是這樣實現路由器和快取引擎之間的通訊的:將若干路由器和系列快取引擎組成乙個服務組service group ,並且這些路由器和引擎都彼此知道對方的存在。一旦建立了服務組,就專門指定乙個快取引擎來決定各個快取引擎間的負載分配。在乙個服務組中,一般能夠為所有路由器所見,並具有最小ip 位址的那個快取引擎成為首領快取引擎,它的任務是為快取引擎群分配資料流,其分配資訊被傳送給整個服務組,這樣每個路由器就可以正確地重定向資料分組,而快取引擎群可以更好地管理它們的負載。
3、實現透明地重定向
wccp 路由器透明地實現使用者瀏覽器對web 伺服器的http 請求的重定向,終端使用者並不知道所瀏覽的頁面並不是直接來自web 伺服器而是快取引擎。除此之外,快取引擎的操作對網路也是透明的,對非重定向傳輸來說路由器完全扮演了他的通常角色即正常的**。
4、支援兩種重定向方法
wccp 支援兩種重定向方法:gre 封裝重定向和l2 重寫重定向。gre 封裝重定向方法,是在ip 報文的頭部封裝乙個gre頭,在ip 報文尾部封裝乙個四位元組的redirect頭,形成乙個新的ip 報文的方法。l2 重寫重定向方法,則不封裝ip 報文,而是由wccp 路由器直接用目標快取引擎的mac 位址替換ip 報文的目的mac 位址即可。gre 封裝重定向方法允許目標快取引擎與路由器之間跨網路連線,而l2 重寫重定向方法要求目標快取引擎與路由器在鏈路層layer2 直接相連。
5、負載均衡
wccp 在快取引擎群之間的負載均衡方式有兩種:雜湊方式和掩碼/變數值集合方式。負載均衡的目的是為了將資料流負載均勻地分配給快取引擎群集。通過負載均衡的方法,wccp 可將通訊流重定向到快取引擎,因此,當服務組中增加或減少了快取引擎時,wccp 可重新在快取引擎群之間分配負載。這樣wccp 支援可伸縮的快取引擎群集,使可用資源更有效地利,用同時為使用者提供高質量的服務。
6、報文退還
當快取引擎把不能處理的報文退還給路由器時,該路由器將不再把該報文重定向,而進行正常的**。例如,快取引擎已經過載沒有空間快取報文時,它將拒絕任何重定向報文並把它們退還安全驗證。
應用:
wccp 技術可以有效地降低internet 網路流量,節省昂貴的廣域網鏈路費用。由於實現wccp 協議的路由器透明地實現了使用者瀏覽器對web 伺服器的http 請求的重定向,所以使用者不用將瀏覽器配置成**伺服器模式。這對isp 和大的企業來說將是非常適宜的,因為他們要統一實現使用者配置非常困難並且昂貴,不易於管理和維護,利用wccp 的特點,現在就不用將使用者瀏覽器配置成統一的**伺服器模式了,這無疑是非常令人感興趣的。
另外,由於快取引擎對使用者和網路操作都是透明的,isp 可以根據需要用分層的形式將快取引擎放在實際網路中的數個不同層次的網路地點。譬如在核心層放置乙個快取引擎群集,在低層的pop 伺服器邊放置一些快取引擎,形成乙個有層次性的體系結構,就可以實現高質量服務,同時實現有效利用網路資源的目的。
python技術簡介 Python簡介
python 簡介 python是乙個高層次的 結合了解釋性 編譯性 互動性和物件導向的指令碼語言。python的設計具有很強的可讀性,相比其他語言經用使用英文關鍵字,其他語言的一些標點符號,它具有比其他語言更有特色語法結構。python 是一種解釋型語言 這意味著開發過程中沒有了編譯這個環節,類似...
RIA技術簡介
1.的定義應用系統 技術允許我們在網際網路上以一種象使用web一樣簡單的方式來部署富客戶端程式。這是乙個使用者介面,它比用html 能實現的介面更加健壯 反應更加靈敏和更具有令人感興趣的視覺化特性。無論將來ria是否能夠如人們所猜測的那樣完全代替html應用 系統,對於那些採用胖客戶端技術執行複雜應...
SELinux技術簡介
selinux introduce selinux技術簡介 july 20,2005 selinux introduce selinux技術簡介 在redhat enterprise linux 4.0或fedora core 2 linux以上版本的linux中,有不少使用者經常會遇到諸如apac...