東南大學計算機系 孫建河 吉逸 周金星
摘要:本文主要研究了如何在公共數(shù)據(jù)網(wǎng)上為企業(yè)實現(xiàn)安全、可靠、高性能、可互操作、費用低的虛擬專用網(wǎng)(VPN)。同時也研究了VPN相關(guān)的各種技術(shù)的實現(xiàn)機制以及它們的優(yōu)缺點。這些技術(shù)包括:隧道技術(shù)、加密技術(shù)以及服務(wù)質(zhì)量(QoS)。
關(guān)鍵詞:VPN 隧道 加密 QoS
一、VPN簡介
虛擬專用網(wǎng)(Virtual Private Network,VPN)是一種“基于公共數(shù)據(jù)網(wǎng),給用戶一種直接連接到私人局域網(wǎng)感覺的服務(wù)”。VPN極大地降低了用戶的費用,而且提供了比傳統(tǒng)方法更強的安全性和可靠性。VPN可分為三大類:(1)企業(yè)各部門與遠程分支之間的Intranet VPN;(2)企業(yè)網(wǎng)與遠程(移動)雇員之間的遠程訪問(Remote Access)VPN;(3)企業(yè)與合作伙伴、客戶、供應商之間的Extranet VPN。
二、VPN的要求
(1)安全性
VPN提供用戶一種私人專用(Private)的感覺,因此建立在不安全、不可信任的公共數(shù)據(jù)網(wǎng)的首要任務(wù)是解決安全性問題。VPN的安全性可通過隧道技術(shù)、加密和認證技術(shù)得到解決。在Intranet VPN中,要有高強度的加密技術(shù)來保護敏感信息;在遠程訪問VPN中要有對遠程用戶可靠的認證機制。
(2)性能
VPN要發(fā)展其性能至少不應該低于傳統(tǒng)方法。盡管網(wǎng)絡(luò)速度不斷提高,但在Internet時代,隨著電子商務(wù)活動的激增,網(wǎng)絡(luò)擁塞經(jīng)常發(fā)生,這給VPN性能的穩(wěn)定帶來極大的影響。因此VPN解決方案應能夠讓管理員進行通信控制來確保其性能。通過VPN平臺,管理員定義管理政策來激活基于重要性的出入口帶寬分配。這樣既能確保對數(shù)據(jù)丟失有嚴格要求和高優(yōu)先級應用的性能,又不會“餓死”,低優(yōu)先級的應用。
(3)管理問題
由于網(wǎng)絡(luò)設(shè)施、應用不斷增加,網(wǎng)絡(luò)用戶所需的IP地址數(shù)量持續(xù)增長,對越來越復雜的網(wǎng)絡(luò)管理,網(wǎng)絡(luò)安全處理能力的大小是VPN解決方案好壞的至關(guān)緊要的區(qū)分。VPN是公司對外的延伸,因此VPN要有一個固定管理方案以減輕管理、報告等方面負擔。管理平臺要有一個定義安全政策的簡單方法,將安全政策進行分布,并管理大量設(shè)備。
(4)互操作
在Extranet VPN中,企業(yè)要與不同的客戶及供應商建立聯(lián)系,VPN解決方案也會不同。因此,企業(yè)的VPN產(chǎn)品應該能夠同其他廠家的產(chǎn)品進行互操作。這就要求所選擇的VPN方案應該是基于工業(yè)標準和協(xié)議的。這些協(xié)議有IPSec、點到點隧道協(xié)議(Point to Point Tunneling Protocol,PPTP)、第二層隧道協(xié)議(Layer 2 Tunneling Protocol,L2TP)等。
三、VPN的實現(xiàn)技術(shù)
VPN實現(xiàn)的兩個關(guān)鍵技術(shù)是隧道技術(shù)和加密技術(shù),同時QoS技術(shù)對VPN的實現(xiàn)也至關(guān)重要。
1.VPN訪問點模型
首先提供一個VPN訪問點功能組成模型圖作為參考。其中IPSec集成了IP層隧道技術(shù)和加密技術(shù)。
2.隧道技術(shù)
隧道技術(shù)簡單的說就是:原始報文在A地進行封裝,到達B地后把封裝去掉還原成原始報文,這樣就形成了一條由A到B的通信隧道。目前實現(xiàn)隧道技術(shù)的有一般路由封裝(Generic Routing Encapsulation,GRE)L2TP和PPTP。
(1)GRE
GRE主要用于源路由和終路由之間所形成的隧道。例如,將通過隧道的報文用一個新的報文頭(GRE報文頭)進行封裝然后帶著隧道終點地址放入隧道中。當報文到達隧道終點時,GRE報文頭被剝掉,繼續(xù)原始報文的目標地址進行尋址。 GRE隧道通常是點到點的,即隧道只有一個源地址和一個終地址。然而也有一些實現(xiàn)允許點到多點,即一個源地址對多個終地址。這時候就要和下一跳路由協(xié)議(Next-Hop Routing Protocol,NHRP)結(jié)合使用。NHRP主要是為了在路由之間建立捷徑。
GRE隧道用來建立VPN有很大的吸引力。從體系結(jié)構(gòu)的觀點來看,VPN就象是通過普通主機網(wǎng)絡(luò)的隧道集合。普通主機網(wǎng)絡(luò)的每個點都可利用其地址以及路由所形成的物理連接,配置成一個或多個隧道。在GRE隧道技術(shù)中入口地址用的是普通主機網(wǎng)絡(luò)的地址空間,而在隧道中流動的原始報文用的是VPN的地址空間,這樣反過來就要求隧道的終點應該配置成VPN與普通主機網(wǎng)絡(luò)之間的交界點。這種方法的好處是使VPN的路由信息從普通主機網(wǎng)絡(luò)的路由信息中隔離出來,多個VPN可以重復利用同一個地址空間而沒有沖突,這使得VPN從主機網(wǎng)絡(luò)中獨立出來。從而滿足了VPN的關(guān)鍵要求:可以不使用全局唯一的地址空間。隧道也能封裝數(shù)量眾多的協(xié)議族,減少實現(xiàn)VPN功能函數(shù)的數(shù)量。還有,對許多VPN所支持的體系結(jié)構(gòu)來說,用同一種格式來支持多種協(xié)議同時又保留協(xié)議的功能,這是非常重要的。IP路由過濾的主機網(wǎng)絡(luò)不能提供這種服務(wù),而只有隧道技術(shù)才能把VPN私有協(xié)議從主機網(wǎng)絡(luò)中隔離開來。基于隧道技術(shù)的VPN實現(xiàn)的另一特點是對主機網(wǎng)絡(luò)環(huán)境和VPN路由環(huán)境進行隔離。對VPN而言主機網(wǎng)絡(luò)可看成點到點的電路集合,VPN能夠用其路由協(xié)議穿過符合VPN管理要求的虛擬網(wǎng)。同樣,主機網(wǎng)絡(luò)用符合網(wǎng)絡(luò)要求的路由設(shè)計方案,而不必受VPN用戶網(wǎng)絡(luò)的路由協(xié)議限制。
雖然GRE隧道技術(shù)有很多優(yōu)點,但用其技術(shù)作為VPN機制也有缺點,例如管理費用高、隧道的規(guī)模數(shù)量大等。因為GRE是由手工配置的,所以配置和維護隧道所需的費用和隧道的數(shù)量是直接相關(guān)的——每次隧道的終點改變,隧道要重新配置。隧道也可自動配置,但有缺點,如不能考慮相關(guān)路由信息、性能問題以及容易形成回路問題。一旦形成回路,會極大惡化路由的效率。除此之外,通信分類機制是通過一個好的粒度級別來識別通信類型。如果通信分類過程是通過識別報文(進入隧道前的)進行的話,就會影響路由發(fā)送速率的能力及服務(wù)性能。
GRE隧道技術(shù)是用在路由器中的,可以滿足Extranet VPN以及Intranet VPN的需求。但是在遠程訪問VPN中,多數(shù)用戶是采用撥號上網(wǎng)。這時可以通過L2TP和PPTP來加以解決。
(2)L2TP和PPTP
L2TP是L2F(Layer 2 Forwarding)和PPTP的結(jié)合。但是由于PC機的桌面操作系統(tǒng)包含著PPTP,因此PPTP仍比較流行。隧道的建立有兩種方式即:“用戶初始化”隧道和“NAS初始化”(Network Access Server)隧道。前者一般指“主動”隧道,后者指“強制”隧道。“主動”隧道是用戶為某種特定目的的請求建立的,而“強制”隧道則是在沒有任何來自用戶的動作以及選擇的情況下建立的。
L2TP作為“強制”隧道模型是讓撥號用戶與網(wǎng)絡(luò)中的另一點建立連接的重要機制。建立過程如下:①用戶通過Modem與NAS建立連接;②用戶通過NAS的L2TP接入服務(wù)器身份認證;③在政策配置文件或NAS與政策服務(wù)器進行協(xié)商的基礎(chǔ)上,NAS和L2TP接入服務(wù)器動態(tài)地建立一條L2TP隧道;④用戶與L2TP接入服務(wù)器之間建立一條點到點協(xié)議(Point to Point Protocol,PPP)訪問服務(wù)隧道;⑤用戶通過該隧道獲得VPN服務(wù)。
與之相反的是,PPTP作為“主動”隧道模型允許終端系統(tǒng)進行配置,與任意位置的PPTP服務(wù)器建立一條不連續(xù)的、點到點的隧道。并且,PPTP協(xié)商和隧道建立過程都沒有中間媒介NAS的參與。NAS的作用只是提供網(wǎng)絡(luò)服務(wù)。PPTP建立過程如下:①用戶通過串口以撥號IP訪問的方式與NAS建立連接取得網(wǎng)絡(luò)服務(wù);②用戶通過路由信息定位PPTP接入服務(wù)器;③用戶形成一個PPTP虛擬接口;④用戶通過該接口與PPTP接入服務(wù)器協(xié)商、認證建立一條PPP訪問服務(wù)隧道;⑤用戶通過該隧道獲得VPN服務(wù)。
在L2TP中,用戶感覺不到NAS的存在,仿佛與PPTP接入服務(wù)器直接建立連接。而在PPTP中,PPTP隧道對NAS是透明的;NAS不需要知道PPTP接入服務(wù)器的存在,只是簡單地把PPTP流量作為普通IP流量處理。
采用L2TP還是PPTP實現(xiàn)VPN取決于要把控制權(quán)放在NAS還是用戶手中。L2TP比PPTP更安全,因為L2TP接入服務(wù)器能夠確定用戶從哪里來的。L2TP主要用于比較集中的、固定的VPN用戶,而PPTP比較適合移動的用戶。
3.加密技術(shù)
數(shù)據(jù)加密的基本思想是通過變換信息的表示形式來偽裝需要保護的敏感信息,使非受權(quán)者不能了解被保護信息的內(nèi)容。加密算法有用于Windows95的RC4、用于IPSec的DES和三次DES。RC4雖然強度比較弱,但是保護免于非專業(yè)人士的攻擊已經(jīng)足夠了;DES和三次DES強度比較高,可用于敏感的商業(yè)信息。
加密技術(shù)可以在協(xié)議棧的任意層進行;可以對數(shù)據(jù)或報文頭進行加密。在網(wǎng)絡(luò)層中的加密標準是IPSec。網(wǎng)絡(luò)層加密實現(xiàn)的最安全方法是在主機的端到端進行。另一個選擇是“隧道模式”:加密只在路由器中進行,而終端與第一跳路由之間不加密。這種方法不太安全,因為數(shù)據(jù)從終端系統(tǒng)到第一條路由時可能被截取而危及數(shù)據(jù)安全。終端到終端的加密方案中,VPN安全粒度達到個人終端系統(tǒng)的標準;而“隧道模式”方案,VPN安全粒度只達到子網(wǎng)標準。在鏈路層中,目前還沒有統(tǒng)一的加密標準,因此所有鏈路層加密方案基本上是生產(chǎn)廠家自己設(shè)計的,需要特別的加密硬件。
4.QoS技術(shù)
通過隧道技術(shù)和加密技術(shù),已經(jīng)能夠建立起一個具有安全性、互操作性的VPN。但是該VPN性能上不穩(wěn)定,管理上不能滿足企業(yè)的要求,這就要加入QoS技術(shù)。實行QoS應該在主機網(wǎng)絡(luò)中,即VPN所建立的隧道這一段,這樣才能建立一條性能符合用戶要求的隧道。
不同的應用對網(wǎng)絡(luò)通信有不同的要求,這些要求可用如下參數(shù)給予體現(xiàn):
·帶寬:網(wǎng)絡(luò)提供給用戶的傳輸率;
·反應時間:用戶所能容忍的數(shù)據(jù)報傳遞延時;
·抖動:延時的變化;
·丟失率:數(shù)據(jù)包丟失的比率。
網(wǎng)絡(luò)資源是有限的,有時用戶要求的網(wǎng)絡(luò)資源得不到滿足、通過QoS機制對用戶的網(wǎng)絡(luò)資源分配進行控制以滿足應用的需求。QoS機制具有通信處理機制以及供應(Provisioning)和配置(Configuration)機制。通信處理機制包括802.1p、區(qū)分服務(wù)(differentiated service per-hop-behaviors,DiffServ)、綜合服務(wù)(integrated services,IntServ)等等,F(xiàn)在大多數(shù)局域網(wǎng)是基于IEEE802技術(shù)的,如以太網(wǎng)、令牌環(huán)、FDDI等,802.1p為這些局域網(wǎng)提供了一種支持QoS的機制。802.1p對鏈路層的802報文定義了一個可表達8種優(yōu)先級的字段。802.1p優(yōu)先級只在局域網(wǎng)中有效,一旦出了局域網(wǎng),通過第三層設(shè)備時就被移走。DiffServ則是第三層的QoS機制,它在IP報文中定義了一個字段稱DSCP(DiffServ codepoint)。DSCP有六位,用作服務(wù)類型和優(yōu)先級,路由器通過它對報文進行排隊和調(diào)度。與802.1p、DiffServ不同的是,IntServ是一種服務(wù)框架,目前有兩種:保證服務(wù)和控制負載服務(wù)。保證服務(wù)許諾在保證的延時下傳輸一定的通信量;控制負載服務(wù)則同意在網(wǎng)絡(luò)輕負載的情況下傳輸一定的通信量。典型地,IntServ與資源預留協(xié)議(Resource reservation Protocol,RSVP)相關(guān)。IntServ服務(wù)定義了允許進入的控制算法,決定多少通信量被允許進入網(wǎng)絡(luò)中。
供應和配置機制包括RSVP、子網(wǎng)帶寬管理(subnet bandwidth manager,SBM)、政策機制和協(xié)議以及管理工具和協(xié)議。這里供應機制指的是比較靜態(tài)的、比較長期的管理任務(wù),如:網(wǎng)絡(luò)設(shè)備的選擇、網(wǎng)絡(luò)設(shè)備的更新、接口添加刪除、拓撲結(jié)構(gòu)的改變等等。而配置機制指的是比較動態(tài)、比較短期的管理任務(wù),如:流量處理的參數(shù)。
RSVP是第三層協(xié)議,它獨立于各種的網(wǎng)絡(luò)媒介。因此,RSVP往往被認為介于應用層(或操作系統(tǒng))與特定網(wǎng)絡(luò)媒介QoS機制之間的一個抽象層。RSVP有兩個重要的消息:PATH消息,從發(fā)送者到接收者;RESV消息,從接收者到始發(fā)者。 RSVP消息包含如下信息:①網(wǎng)絡(luò)如何識別一個會話流(分類信息);②描述會話流的定量參數(shù)(如數(shù)據(jù)率);③要求網(wǎng)絡(luò)為會話流提供的服務(wù)類型;④政策信息(如用戶標識)。RSVP的工作流程如下:
·會話發(fā)送者首先發(fā)送PATH消息,沿途的設(shè)備若支持RSVP則進行處理,否則繼續(xù)發(fā)送;
·設(shè)備若能滿足資源要求,并且符合本地管理政策的話,則進行資源分配,PATH消息繼續(xù)發(fā)送,否則向發(fā)送者發(fā)送拒絕消息;
·會話接收者若對發(fā)送者要求的會話流認同,則發(fā)送RESV消息,否則發(fā)送拒絕消息;
·當發(fā)送者收到RESV消息時,表示可以進行會話,否則表示失敗。
SBM是對RSVP功能的加強,擴大了對共享網(wǎng)絡(luò)的利用。在共享子網(wǎng)或LAN中包含大量交換機和網(wǎng)絡(luò)集線器,因此標準的RSVP對資源不能充分利用。支持RSVP的主機和路由器同意或拒絕會話流,是基于它們個人有效的資源而不是基于全局有效的共享資源。結(jié)果,共享子網(wǎng)的RSVP請求導致局部資源的負載過重。SBM可以解決這個問題:協(xié)調(diào)智能設(shè)備。包括:具有SBM能力的主機、路由器以及交換機。這些設(shè)備自動運行一選舉協(xié)議,選出最合適的設(shè)備作為DSBM(designated SBM)。當交換機參與選舉時,它們會根據(jù)第二層的拓撲結(jié)構(gòu)對子網(wǎng)進行分割。主機和路由器發(fā)現(xiàn)最近的DSBM并把RSVP消息發(fā)送給它。然后,DSBM查看所有消息來影響資源的分配并提供允許進入控制機制。
網(wǎng)絡(luò)管理員基于一定的政策進行QoS機制配置。政策組成部分包括:政策數(shù)據(jù),如用戶名;有權(quán)使用的網(wǎng)絡(luò)資源;政策決定點(policy decsion point,PDP);政策加強點(policy enforcement point,PEP)以及它們之間的協(xié)議。傳統(tǒng)的由上而下(TopDown)的政策協(xié)議包括簡單網(wǎng)絡(luò)管理協(xié)議(Simple Network Management Protocol,SNMP)、命令行接口(Command Line Interface,CLI)、命令開放協(xié)議服務(wù)(Command Open Protocol Services,COPS)等。這些QoS機制相互作用使網(wǎng)絡(luò)資源得到最大化利用,同時又向用戶提供了一個性能良好的網(wǎng)絡(luò)服務(wù)。
四、結(jié)束語
基于公共網(wǎng)的VPN通過隧道技術(shù)、數(shù)據(jù)加密技術(shù)以及QoS機制,使得企業(yè)能夠降低成本、提高效率、增強安全性。VPN產(chǎn)品從第一代:VPN路由器、交換機,發(fā)展到第二代的VPN集中器,性能不斷得到提高。在網(wǎng)絡(luò)時代,企業(yè)發(fā)展取決于是否最大限度地利用網(wǎng)絡(luò)。VPN將是企業(yè)的最終選擇。
摘自《數(shù)據(jù)通信》