專利名稱:服務(wù)器、vpn客戶機、vpn系統(tǒng)及軟件的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及使用因特網(wǎng)協(xié)議在物理上分離的網(wǎng)點間構(gòu)成邏輯的專用網(wǎng)絡(luò)(VPN)之通信系統(tǒng)。
背景技術(shù):
作為使用因特網(wǎng)來構(gòu)建L2VPN的方式,利用隧道技術(shù)的方式已為眾所周知。在本方式中,捕捉在發(fā)送方VPN裝置所連接的LAN上流動的以太幀,并以IP進行封裝并將其發(fā)送給接收方VPN裝置。接收到封裝了以太幀的IP信息包后的接收方VPN裝置,可以通過從所接收到的IP信息包取出以太幀,并向接收方裝置所連接的LAN發(fā)送以太幀,來構(gòu)建L2VPN。
對于經(jīng)由因特網(wǎng)的通信而言,有可能在通信路徑上被第三人竊聽或篡改數(shù)據(jù)。因此,為了安全地收發(fā)數(shù)據(jù),需要使用加密。作為保護數(shù)據(jù)不受IP信息包的竊聽和篡改損害的技術(shù),一般來說IPsec(IPSecurity Protocol,IP安全協(xié)議)已為眾所周知(例如,參見非專利文獻1)。就IPsec而言,根據(jù)預(yù)先規(guī)定了加密方式和密鑰等的安全關(guān)聯(lián),來進行IP信息包的加密和解密。對于安全關(guān)聯(lián)的建立,除使用IKE(Internet Key Exchange,因特網(wǎng)密鑰交換協(xié)議)進行動態(tài)建立的方法之外,還存在用手工事先加以設(shè)定的方法。
作為用來從一個發(fā)送終端向多個接收終端發(fā)送相同內(nèi)容的IP信息包之技術(shù),多播方式已為眾所周知。對于使用單播方式的通信來說,存在多個接收終端時,需要發(fā)送終端只按接收終端的數(shù)目復(fù)制信息包進行發(fā)送。但是,對于使用多播方式的通信來說,發(fā)送終端只發(fā)送1個信息包,信息包的復(fù)制就通過路徑上適當(dāng)?shù)亩嗖ヂ酚善鱽磉M行。因此,可以減輕發(fā)送終端的負(fù)荷,并且減少通信量,有效使用網(wǎng)絡(luò)。
非專利文獻1 IETF,RFC2401發(fā)明內(nèi)容為了利用因特網(wǎng)并保證專用性和保密性來構(gòu)建L2VPN,需要在VPN客戶機和VPN服務(wù)器間加密交換數(shù)據(jù)。在VPN服務(wù)器中,需要將從VPN客戶機所接收到的數(shù)據(jù),通過數(shù)據(jù)發(fā)送源VPN客戶機用的密鑰進行解密,并且在決定作為數(shù)據(jù)發(fā)送目的地的VPN客戶機之后,通過發(fā)送源VPN客戶機用的密鑰進行加密。加密、解密的處理負(fù)荷較高,VPN服務(wù)器的處理能力降低。
VPN客戶機根據(jù)從VPN服務(wù)器所分發(fā)的多播地址的安全關(guān)聯(lián),對以太幀進行加密,并用使目標(biāo)地址為多播地址的IP信息包進行封裝。將該加密后的多播IP信息包,用使目標(biāo)地址為VPN服務(wù)器IP地址的IP信息包再進行封裝,并以單播方式發(fā)送給VPN服務(wù)器。接收到來自VPN客戶機的IP信息包后的VPN服務(wù)器,對IP信息包進行一次解封裝,根據(jù)其中多播IP信息包的多播地址來決定發(fā)送目的地的VPN客戶機,并用目標(biāo)地址為發(fā)送目的地VPN客戶機IP地址的IP信息包又一次進行封裝,將其發(fā)送給VPN客戶機。VPN客戶機在對所接收到的IP信息包進行一次封裝之后,根據(jù)多播的安全關(guān)聯(lián)對其中的多播IP信息包進行解密,取得所封裝的以太幀。
根據(jù)本發(fā)明,可以大幅減輕VPN服務(wù)器的處理負(fù)荷,并能夠使VPN服務(wù)器的處理能力得到提高。
圖1是表示實施本發(fā)明的狀況的順序圖。
圖2表示實施本發(fā)明的網(wǎng)絡(luò)的概念圖。
圖3-1是表示本發(fā)明中所使用的VPN客戶機的內(nèi)部結(jié)構(gòu)的概念圖。
圖3-2是表示本發(fā)明中所使用的VPN客戶機的內(nèi)部處理的概念圖。
圖4-1是表示VPN信息管理表的概念圖。
圖4-2是表示外部LAN MAC管理表的概念圖。
圖5-1是表示本發(fā)明中所使用的VPN服務(wù)器的內(nèi)部結(jié)構(gòu)的概念圖。
圖5-2是表示本發(fā)明中所使用的VPN服務(wù)器的內(nèi)部處理的概念圖。
圖6-1是表示用戶VPN組管理表的概念圖。
圖6-2是表示單播組管理表的概念圖。
圖6-3是表示多播地址管理表的概念圖。
圖6-4是表示MAC IP對應(yīng)管理表的概念圖。
圖7-1是表示VPN服務(wù)器的用戶VPN管理處理的流程圖。
圖7-2是表示VPN服務(wù)器的VPN傳輸處理的流程圖。
圖8-1是表示VPN客戶機的VPN傳輸發(fā)送處理的流程圖。
圖8-2是表示VPN客戶機的VPN傳輸接收處理的流程圖。
圖9是表示VPN報頭的概念圖。
圖10是表示在網(wǎng)路中流動的數(shù)據(jù)結(jié)構(gòu)的概念圖。
圖11是表示構(gòu)成L2VPN的客戶機被任意變更的狀況的順序圖。
圖12-1是表示多播地址管理表的概念圖。
圖12-2是表示VPN Sub ID管理表的概念圖。
圖13是表示在多播網(wǎng)絡(luò)上實施本發(fā)明的狀況的概念圖。
圖14是表示在多播網(wǎng)絡(luò)上實施本發(fā)明的狀況的順序圖。
圖15是表示利用多個VPN服務(wù)器來實施本發(fā)明的狀況的概念圖。
圖16是表示利用多個VPN服務(wù)器來實施本發(fā)明的狀況的順序圖。
圖17是表示經(jīng)由多個VPN服務(wù)器來實施本發(fā)明的網(wǎng)絡(luò)的概念圖。
圖18是表示經(jīng)由多個VPN服務(wù)器來實施本發(fā)明的網(wǎng)絡(luò)的順序圖。
圖19是表示經(jīng)由多個VPN服務(wù)器來實施本發(fā)明時所使用的單播組管理表的概念圖。
具體實施例方式
實施示例1圖2表示實施本發(fā)明的通信系統(tǒng)。本通信系統(tǒng)包括VPN服務(wù)器101;VPN客戶機A102;VPN客戶機B103;VPN客戶機C104;各VPN客戶機所連接的LAN105、106、107;LAN105所屬的終端(1)108;LAN106所屬的終端(2)109;LAN107所屬的終端(3)110。VPN服務(wù)器101和各VPN客戶機102、103、104經(jīng)由因特網(wǎng)111來連接。
圖3-1是VPN客戶機A102的結(jié)構(gòu)示例。VPN客戶機A102由CPU(Central Processing Unit,中央處理器)301、存儲器302及接口部304、305構(gòu)成。CPU301用來實際執(zhí)行各種應(yīng)用程序和OS(Operating System,操作系統(tǒng))。存儲器302用來存儲在CPU301執(zhí)行過程中所使用的程序以及各種應(yīng)用程序。CPU301和存儲器302經(jīng)由總線303來連接。接口部304、305用來將從CPU301和存儲器302所供給的數(shù)據(jù)向外部設(shè)備供給。接口部304、305之中的任一個連接到LAN105上,并且另一個連接到因特網(wǎng)111上。圖3-2表示存儲器302內(nèi)所存儲的信息。在存儲器302內(nèi),存儲有IPsec處理312、VPN建立處理313、VPN傳輸處理314等的程序以及安全關(guān)聯(lián)(SA)管理表308、VPN信息管理表309、認(rèn)證信息管理表310和外部LANMAC管理表311等的信息管理表。
安全關(guān)聯(lián)管理表308用來管理IPsec的安全關(guān)聯(lián)。VPN信息管理表309用來管理VPN客戶機可利用的VPN服務(wù)器的單播地址以及VPN傳輸用的多播地址。圖4-1表示VPN信息管理表309的結(jié)構(gòu)示例。在示例中表示了VPN服務(wù)器的IP地址是3ffe∷1000,VPN傳輸用的多播地址是ff1e∷1的情況。
在認(rèn)證信息管理表310中,管理VPN建立時用戶認(rèn)證所需要的VPN客戶機的用戶ID和口令。
外部LAN MAC管理表311用來管理終端(2)109及終端(3)110的MAC地址和MAC地址的有效時間,該終端(2)109及終端(3)110屬于VPN客戶機A102經(jīng)由VPN服務(wù)器101所連接的VPN客戶機B103、C104所連接的LAN106、107。有效時間在每次發(fā)生和終端之間的通信時都進行更新,如果在一定時間沒有更新且有效時間變?yōu)?,則所注冊的MAC地址被從外部LAN MAC地址管理表311刪除。
圖4-2表示外部LAN MAC管理表311的結(jié)構(gòu)示例。在示例中表示了終端(2)109及終端(3)110的MAC地址為bb、cc,并且這些MAC地址的有效時間是3600秒、3000秒的情況。
圖5-1是VPN服務(wù)器101的結(jié)構(gòu)示例。VPN服務(wù)器101由CPU501、存儲器502及接口部504構(gòu)成。CPU501、存儲器502及接口部504經(jīng)由總線503來連接。接口部504連接到因特網(wǎng)111上。
圖5-2表示存儲器502中所存儲的信息。在存儲器502內(nèi),存儲有IPsec處理510、用戶VPN管理處理511和VPN傳輸處理512等程序以及用戶VPN組管理表506、單播組管理表507、多播地址管理表508和MAC IP對應(yīng)管理表509等信息管理表。
圖6-1是用戶VPN組管理表506的結(jié)構(gòu)示例。用戶VPN信息管理表用來管理用戶所屬的VPN組。在示例中,用戶A、B、C屬于VPN組1001、用戶D屬于VPN組1002。
圖6-2是單播組管理表507的結(jié)構(gòu)示例。單播組管理表507用來管理屬于相同VPN組的用戶當(dāng)前正在使用的單播IP地址。在示例中表示了VPN組1001所屬的用戶(用戶A、B、C)正在使用的IP地址是3ffe:aaaa∷1、3ffe:bbbb∷1及3ffe:cccc∷1的情況。
圖6-3是多播地址管理表508的結(jié)構(gòu)示例。多播地址管理表508用來管理VPN組當(dāng)前正在利用的多播地址以及與多播地址對應(yīng)的安全關(guān)聯(lián)。在示例中表示了VPN組1001利用多播地址ff1e∷1,并且多播地址ff1e∷1用的安全關(guān)聯(lián)是SA 1的情況。所謂安全關(guān)聯(lián),表示IPsec的安全關(guān)聯(lián),并且包括加密算法、密鑰及SPI(Security ParameterIndex)等。
圖6-4是MAC IP對應(yīng)管理表509的結(jié)構(gòu)示例。MAC IP對應(yīng)管理表509用來管理終端的MAC地址和與終端所屬的LAN所連接的VPN客戶機IP地址之間的對應(yīng)關(guān)系。在示例中表示了終端(1)108的MAC地址aa對應(yīng)于VPN客戶機A102的IP地址3ffe:aaaa∷1,終端(2)109的MAC地址bb對應(yīng)于VPN客戶機B103的IP地址3ffe:bbbb∷1的情況。
圖1表示了采用本發(fā)明所涉及的LAN間連接方式由L2VPN來連接LAN105、106及107時的順序??蛻魴CA102、客戶機B103及客戶機C104全都是VPN客戶機,并且假設(shè)各VPN客戶機的利用者A、B、C同意由L2VPN來連接LAN105、106、107。
在VPN組間建立多播安全關(guān)聯(lián)的VPN客戶機方的處理是通過VPN建立處理313進行的。另外,VPN服務(wù)器方的處理是通過用戶VPN管理處理511進行的。
首先,在VPN客戶機A102和VPN服務(wù)器101間建立多播的安全關(guān)聯(lián)。VPN客戶機A102在采用IPsec對數(shù)據(jù)進行加密之后,根據(jù)認(rèn)證信息管理表310中所注冊的信息,進行用戶認(rèn)證請求。VPN服務(wù)器101進行用戶認(rèn)證,在用戶被確認(rèn)時,將在VPN連接中利用的多播地址以及多播地址的安全關(guān)聯(lián)作為安全參數(shù),通告給VPN客戶機。VPN客戶機將被分發(fā)的安全參數(shù)注冊到安全關(guān)聯(lián)管理表308中,在VPN組間建立安全關(guān)聯(lián)??蛻魴CB及客戶機C也同樣地在VPN組間建立安全關(guān)聯(lián)。
圖7-1表示VPN服務(wù)器101的用戶VPN管理處理511的處理流程。本處理表示了在圖1的順序圖中VPN客戶機建立多播安全關(guān)聯(lián)之前的VPN服務(wù)器的處理。
VPN服務(wù)器101按照來自客戶機A102的請求,利用IKE等在VPN客戶機和VPN服務(wù)器間建立使用多播地址的安全關(guān)聯(lián)(步驟701)。在建立VPN客戶機和VPN服務(wù)器間的安全關(guān)聯(lián)后,采用IPsec將數(shù)據(jù)加密,進行用戶認(rèn)證。用戶認(rèn)證也可以使用XAUTH等,在建立安全關(guān)聯(lián)的過程中進行。判斷用戶認(rèn)證是否成功(步驟702),在失敗的情況下結(jié)束處理。在成功的情況下,根據(jù)用戶認(rèn)證所使用的用戶ID,采用用戶VPN組管理表506來確定用戶的VPN ID(步驟703)。根據(jù)VPN ID,進行單播組管理表507的檢索,并判斷VPN ID是否已注冊(步驟704)。
在單播組管理表507中未注冊VPN ID時,判斷為在共享同一VPN ID的用戶組內(nèi)最初來自VPN客戶機的連接,并決定以后VPN連接中利用的多播地址。另外,還生成對于所決定的多播地址的安全關(guān)聯(lián),并與多播地址一起保存到多播地址管理表508中(步驟705)。再者,還生成由步驟703所確定的VPN ID的單播組管理表508,并注冊VPN客戶機的單播地址(步驟706)。在單播組管理表506中已注冊VPN ID(步驟704)時,不進行多播地址及安全關(guān)聯(lián)的生成、注冊。給已注冊的單播組管理表507,追加VPN客戶機的單播地址(步驟707)。將在VPN組中使用的多播地址以及多播地址用安全關(guān)聯(lián)通告給VPN客戶機,結(jié)束處理(步驟708)。
通過上面的處理,可以在同一VPN組間建立多播的安全關(guān)聯(lián)。
返回到圖1,說明以太幀的傳輸處理。VPN客戶機A102在IP信息包中封裝以太幀,將其發(fā)送給VPN服務(wù)器101。本處理是通過VPN客戶機A102的VPN傳輸處理314進行的。將從VPN客戶機A102向VPN服務(wù)器101所發(fā)送的IP信息包傳輸給適當(dāng)?shù)腣PN客戶機的處理,是通過VPN服務(wù)器101的VPN傳輸處理511進行的。
圖8-1表示VPN客戶機中VPN傳輸處理的發(fā)送處理流程。在VPN客戶機A102中,對所有在VPN客戶機A102所連接的LAN105上流動的以太幀進行捕捉(步驟801)。檢索以太幀的發(fā)送源MAC地址是否注冊于外部LAN MAC管理表311中(步驟802)。在已注冊于外部LAN MAC管理表311中時,將所捕捉到的以太幀廢棄,并結(jié)束處理。在未注冊時,從VPN信息管理表309取得VPN組中利用的多播地址(步驟803)。制作IP信息包,該IP信息包將由步驟801所捕捉到的以太幀作為有效負(fù)載。將IP信息包的目標(biāo)地址設(shè)為由步驟803所取得的多播地址(步驟804)。此后,將由步驟804所制作出的IP信息包稱為內(nèi)部IP信息包,將內(nèi)部IP信息包的報頭部稱為內(nèi)部IP報頭。
這樣,因為使內(nèi)部IP報頭的目標(biāo)地址成為多播地址,所以VPN服務(wù)器可以根據(jù)該多播地址,確定傳輸目的地的VPN客戶機。判斷將目標(biāo)地址作為多播地址的安全關(guān)聯(lián)是否注冊于安全關(guān)聯(lián)管理表308中(步驟805)。如果是正常狀態(tài),則通過步驟708所分發(fā)的多播地址的安全關(guān)聯(lián)已被注冊。在未注冊安全關(guān)聯(lián)時,結(jié)束處理。在已注冊安全關(guān)聯(lián)時,根據(jù)注冊信息,對通過步驟804所制作出的內(nèi)部IP信息包進行加密(步驟806)。這樣,因為按照多播地址的安全關(guān)聯(lián)對內(nèi)部IP信息包進行加密,所以即便不由VPN服務(wù)器進行解密、再加密的處理,發(fā)送目的地的VPN客戶機也可以對內(nèi)部IP信息包進行解密。給通過步驟806加密后的內(nèi)部IP信息包添加VPN報頭901(步驟807)。
圖9表示VPN報頭的結(jié)構(gòu)示例。VPN報頭901具有下一數(shù)據(jù)字段902,用來表示下一字段是MAC地址還是IP報頭。在下一數(shù)據(jù)字段902表示MAC地址時,包含發(fā)送源MAC地址903及目標(biāo)MAC地址904。從VPN信息管理表309取得VPN服務(wù)器的IP地址(步驟808)。制作下述IP信息包,并將目標(biāo)IP地址設(shè)定為由步驟808所取得的VPN服務(wù)器的地址,將IP信息包輸出到與因特網(wǎng)連接的網(wǎng)路上(步驟809),上述IP信息包是將由步驟807所制作出的數(shù)據(jù)包含到UDP有效負(fù)載中。此后,將由步驟809所制作出的IP信息包稱為外部IP信息包,將外部IP信息包的報頭部稱為外部IP報頭。
圖10表示由VPN客戶機A102的發(fā)送處理所制作出的IP信息包的結(jié)構(gòu)。其結(jié)構(gòu)為,在以VPN服務(wù)器作為目的地的外部IP信息包的UDP有效負(fù)載部1001中,存儲添加了VPN報頭901且發(fā)往多播地址的內(nèi)部IP信息包1002,并且在發(fā)往多播地址的內(nèi)部IP信息包1002之中存儲所捕捉到的以太幀。這樣,因為預(yù)先將內(nèi)部IP報頭的目標(biāo)地址作為多播地址,所以VPN服務(wù)器不用對內(nèi)部IP信息包被加密的部分進行解密,就可以確定目標(biāo)VPN客戶機。
圖7-2表示,接收到來自VPN客戶機A102的IP信息包后的VPN服務(wù)器101的處理流程。VPN服務(wù)器101接收發(fā)給自己的IP信息包(步驟709)。VPN服務(wù)器101對外部IP信息包的UDP有效負(fù)載部1001進行分析(步驟710),取得VPN報頭901。檢查VPN報頭的下一數(shù)據(jù)字段902,判斷在VPN報頭901中是否包含MAC地址(步驟711)。在包含MAC地址時,按照從VPN報頭901所取得的發(fā)送源MAC地址904,檢索MAC IP對應(yīng)管理表509(步驟712)。判斷在MAC IP對應(yīng)管理表509中有沒有注冊MAC地址(步驟713),在沒有注冊時,向MAC IP對應(yīng)管理表509注冊由VPN報頭901所通告的發(fā)送源MAC地址、以及由步驟709所接收到的IP信息包發(fā)送源IP地址的關(guān)聯(lián)(步驟714)。按照從VPN報頭901所取得的目標(biāo)MAC地址903,檢索MAC IP對應(yīng)管理表509(步驟715),判斷有沒有注冊目標(biāo)MAC地址(步驟716)。
在MAC IP對應(yīng)管理表509中有從VPN報頭901的目標(biāo)MAC地址903所取得的MAC地址的注冊時,制作下述外部IP信息包,并且所制作出的外部IP信息包的目標(biāo)IP地址設(shè)為從MAC IP對應(yīng)管理表509所取得的IP地址,上述外部IP信息包將由步驟709所接收到IP信息包的VPN報頭下面部分作為UDP有效負(fù)載。將所制作出的外部IP信息包輸出到網(wǎng)路上(步驟719)。在MAC IP對應(yīng)管理表509中沒有注冊從VPN報頭的目標(biāo)MAC地址903所取得的MAC地址時,按照由步驟709所接收到外部IP信息包的UDP有效負(fù)載1001中所含的內(nèi)部IP信息包1002的目標(biāo)地址,檢索多播管理表508并取得VPN ID。按照所取得的VPN ID檢索單播組管理表,取得下述客戶機的IP地址(步驟718),該客戶機屬于和IP信息包發(fā)送源VPN客戶機相同的VPN組。在IP地址的取得失敗時,結(jié)束處理。在IP地址的取得成功時,從通過步驟717所取得的IP地址之中,選擇所有由步驟709所取得的外部IP信息包發(fā)送源IP地址以外的IP地址。制作下述IP信息包,該IP信息包將由步驟709所接收到IP信息包的VPN報頭下面部分作為UDP有效負(fù)載。所制作出外部IP信息包的目標(biāo)IP地址設(shè)為所選擇的IP地址,并將外部IP信息包輸出到網(wǎng)路上(步驟719)。
在步驟711中VPN報頭內(nèi)未包含MAC地址時,也就是VPN報頭的下一數(shù)據(jù)字段為2時,不進行MAC地址的檢索,而按照由步驟709所接收到外部IP信息包的UDP有效負(fù)載1001中所含內(nèi)部IP信息包1002的目標(biāo)地址,檢索多播管理表508并取得VPN ID。按照所取得的VPN ID檢索單播組管理表507,取得下述客戶機的IP地址(步驟718),該客戶機屬于和外部IP信息包發(fā)送源VPN客戶機相同的VPN組。在IP地址的取得失敗時,結(jié)束處理。在IP地址的取得成功時,從通過步驟717所取得的IP地址之中,選擇所有由步驟709所取得的外部IP信息包的發(fā)送源IP地址以外的IP地址。制作下述外部IP信息包,該外部IP信息包將由步驟709所接收到IP信息包的VPN報頭下面部分作為UDP有效負(fù)載。將所制作的外部IP信息包的目標(biāo)IP地址設(shè)為所選擇的IP地址,并將外部IP信息包輸出到網(wǎng)路上(步驟719)。
圖8-2表示,從VPN服務(wù)器101接收到發(fā)往VPN客戶機B103的信息包后的VPN客戶機的接收處理流程。本處理是通過VPN客戶機的VPN傳輸處理314進行的。
VPN客戶機B102接收發(fā)給自己的IP信息包(步驟810)。檢查所接收到的IP信息包的UDP有效負(fù)載1001,取得UDP有效負(fù)載1001中包含的內(nèi)部IP信息包1002(步驟811)。檢索安全關(guān)聯(lián)管理表308,在所取得的內(nèi)部IP信息包1002中檢索對應(yīng)的安全關(guān)聯(lián)(步驟812),判斷對應(yīng)的安全關(guān)聯(lián)是否已被注冊(步驟813)。在對應(yīng)的安全關(guān)聯(lián)未注冊時,結(jié)束處理。如果是正常狀態(tài),則在VPN連接時從VPN服務(wù)器101所分發(fā)的多播地址的安全關(guān)聯(lián)已被注冊。存在對應(yīng)的安全關(guān)聯(lián)時,根據(jù)所取得的安全關(guān)聯(lián),對通過步驟811所取得的內(nèi)部IP信息包1002進行解密(步驟814)。從解密后的內(nèi)部IP信息包,取得以太幀(步驟815)。按照由步驟815所取得的以太幀的發(fā)送源MAC地址,檢索外部LAN MAC管理表311(步驟816)。
在所檢索到的發(fā)送源MAC地址已注冊于外部LAN MAC管理表311中時,更新對應(yīng)的MAC地址有效時間(步驟818),將由步驟815所取得的以太幀輸出到網(wǎng)路上(步驟820),并結(jié)束處理。在所檢索到的發(fā)送源MAC地址未注冊于外部LAN MAC管理表311中時,將發(fā)送源MAC地址注冊到外部LAN MAC管理表中(步驟819),將由步驟815所取得的以太幀輸出到網(wǎng)路上(步驟820),并結(jié)束處理。
根據(jù)上面實施示例1所示的結(jié)構(gòu),由于在實現(xiàn)保證了安全性的專用網(wǎng)時,不在VPN服務(wù)器內(nèi)進行內(nèi)部IP信息包的加密、解密處理,因而可以減輕VPN服務(wù)器的處理負(fù)荷,同時提高處理能力。
實施示例2在實施示例2中,將說明對VPN ID引入Sub ID、并在同一VPN組內(nèi)對構(gòu)成L2VPN的用戶進行任意變更的示例。圖11表示通過任意變更從VPN服務(wù)器101所分發(fā)的安全參數(shù)來變更構(gòu)成L2VPN的用戶之狀況。
各VPN客戶機(102、103、104)與實施示例1同樣地,在VPN客戶機和VPN服務(wù)器間建立單播地址的安全關(guān)聯(lián),進行用戶認(rèn)證。在用戶被確認(rèn)時,將VPN連接中利用的多播地址及多播地址的安全關(guān)聯(lián)作為安全參數(shù),通告給VPN客戶機。在本實施示例中,將從VPN服務(wù)器101向各VPN客戶機(102、103、104)分發(fā)的安全關(guān)聯(lián),變更分發(fā)給每個VPN Sub ID。為此,在多播地址管理表508中追加VPNSub ID字段1201。圖12-1表示擴展后的多播地址管理表的概念圖。VPN Sub ID是同一VPN組內(nèi)的管理者事先設(shè)定的。也可以使用VPN組管理者用的入口頁面等,在VPN連接過程中變更各用戶所屬的SubID。圖12-2表示VPN Sub ID組管理表的概念圖。
在圖11中,由VPN組管理者做出的初始設(shè)定是,用戶A及用戶B的Sub ID設(shè)定為1,用戶C的Sub ID設(shè)定為2。進行用戶認(rèn)證后,VPN服務(wù)器101作為安全參數(shù)給VPN客戶機A102及B103分發(fā)多播的安全關(guān)聯(lián)1,并且作為安全參數(shù)給VPN客戶機C104分發(fā)多播的安全關(guān)聯(lián)10。由于給VPN客戶機A102及B103分發(fā)了相同的安全關(guān)聯(lián),因而在VPN客戶機A102、B103間建立了多播的安全關(guān)聯(lián),但是由于給VPN客戶機C104分發(fā)了不同的安全關(guān)聯(lián),因而不能建立和客戶機A102及B103之間的安全關(guān)聯(lián)。
這種狀態(tài)下,VPN客戶機A102與實施示例1同樣地,用IP信息包封裝所捕捉到的以太幀,發(fā)送給VPN服務(wù)器101。VPN服務(wù)器按照從UDP有效負(fù)載部1001所取出內(nèi)部IP信息包1002的目標(biāo)多播地址,選擇VPN客戶機B103及VPN客戶機C104,并采用與實施示例1相同的方法進行發(fā)送。接收到來自VPN服務(wù)器101的IP信息包后的VPN客戶機B103及C104嘗試對加密后的多播信息包進行解密。由于VPN客戶機B103同VPN客戶機A102共享安全關(guān)聯(lián),因而可以進行解密,但是由于VPN客戶機C104未共享安全關(guān)聯(lián),因而無法解密。因此,VPN客戶機A102及B103可以構(gòu)建L2VPN,而VPN客戶機C104不能和VPN客戶機A102及B103構(gòu)建L2VPN。也就是說,VPN客戶機C104不能對從VPN客戶機A102或VPN客戶機B103經(jīng)由L2VPN所接收到的以太幀進行解密。
VPN組管理者進行Sub ID的變更,將用戶C的Sub ID變更成1。
VPN服務(wù)器101檢測到Sub ID的變更,并從用戶VPN組管理表506取得出現(xiàn)了變更的用戶VPN ID。使用多播地址管理表508,按照VPN ID、Sub ID取得安全關(guān)聯(lián)。將所取得的安全關(guān)聯(lián)作為安全參數(shù),通告給VPN客戶機C104。VPN客戶機C104從所分發(fā)的安全參數(shù)之中取得多播的安全關(guān)聯(lián),向安全關(guān)聯(lián)管理表308進行注冊。借此,在VPN客戶機A102、B103、C104間建立了多播的安全關(guān)聯(lián)。此后,從VPN客戶機A102或VPN客戶機B103所發(fā)送的數(shù)據(jù)也可以由C104進行解密。
根據(jù)上面實施示例2所示的結(jié)構(gòu),可以靈活變更屬于一個VPN組的客戶機。
實施示例3
圖13表示通過多播網(wǎng)絡(luò)來實施本發(fā)明的狀況。在本實施示例中,各VPN客戶機(102、103、104)經(jīng)由多播網(wǎng)絡(luò)1302來連接。在多播網(wǎng)絡(luò)1302中包括多播路由器1301。
VPN服務(wù)器101如果被設(shè)置到可進行IP通信的地方,也可以不存在于多播網(wǎng)絡(luò)1302內(nèi)。
圖14表示按照本實施示例的通信過程示例。各VPN客戶機(102、103、104)與實施示例1同樣地,和VPN服務(wù)器101建立單播的安全關(guān)聯(lián),進行用戶認(rèn)證。在用戶被確認(rèn)時,將VPN連接中利用的多播地址及多播地址的安全關(guān)聯(lián)通告給VPN客戶機,建立VPN組間的安全關(guān)聯(lián)。
客戶機A102與第1實施示例同樣地,捕捉從終端(1)108所發(fā)送的以太幀,對IP信息包進行加密(步驟801到步驟806)。在本實施示例中,VPN客戶機A102不添加VPN報頭901和以VPN服務(wù)器101作為目標(biāo)的IP報頭,就將該IP信息包輸出到網(wǎng)路上。也就是說,按內(nèi)部IP地址的原樣進行發(fā)送。以多播地址作為目標(biāo)地址的IP信息包通過多播網(wǎng)絡(luò)1302內(nèi)的多播路由器1301進行復(fù)制,發(fā)送給VPN客戶機B103及C104。接收到從VPN客戶機A102所發(fā)送的發(fā)往多播目的地的IP信息包后的各客戶機,采用對應(yīng)的安全關(guān)聯(lián)對IP信息包進行解密,并進行與實施示例1相同的處理(步驟812到步驟820)。
根據(jù)上面實施示例3所示的結(jié)構(gòu),不用對以太幀的傳輸使用VPN服務(wù)器,而可以利用多播網(wǎng)絡(luò)來構(gòu)成專用網(wǎng),并且能夠減輕VPN服務(wù)器的處理負(fù)荷,與此同時提高處理能力。
實施示例4圖15表示采用多個VPN服務(wù)器來實施本發(fā)明的狀況。在本實施示例中,將VPN服務(wù)器在因特網(wǎng)111上配置多個,并且VPN客戶機通過連接到最接近的VPN服務(wù)器,而同其他VPN客戶機連接。在本實施示例中,VPN客戶機A102、B103、C104以及代表VPN服務(wù)器1501、VPN服務(wù)器A1502、B1503經(jīng)由因特網(wǎng)111來連接。
圖16表示按照本實施示例的通信過程示例。各VPN客戶機(102、103、104)與實施示例1同樣地,和代表VPN服務(wù)器1501建立單播的安全關(guān)聯(lián)。代表VPN服務(wù)器1501進行用戶VPN管理處理511,并分發(fā)VPN連接中利用的多播地址以及多播地址的安全關(guān)聯(lián)。此時,將以后在L2數(shù)據(jù)的傳輸中使用的VPN服務(wù)器地址分發(fā)給各VPN客戶機。例如,VPN客戶機A102在代表VPN服務(wù)器1501中被確認(rèn)時,代表VPN服務(wù)器1501將VPN服務(wù)器A1501的地址、VPN連接中利用的多播地址以及多播地址的安全關(guān)聯(lián),通告給VPN客戶機A102。
其他的VPN客戶機也采用相同的方法,取得最接近VPN服務(wù)器的地址。代表VPN服務(wù)器1501在進行用戶VPN管理處理511之后,向收容客戶機A102的VPN服務(wù)器1502,分發(fā)VPN傳輸處理時所需要的多播地址管理表508以及單播組管理表507。多播地址管理表508和單播組管理表507也可以只分發(fā)VPN客戶機連接時所變更的差別部分。此后,VPN服務(wù)器A1502、B1503對來自VPN客戶機A102、B103、C104的L2數(shù)據(jù)進行傳輸?shù)奶幚?,與第1實施示例相同。
根據(jù)上面實施示例4所示的結(jié)構(gòu),即使在具備多個VPN服務(wù)器的網(wǎng)絡(luò)上,也不用進行VPN服務(wù)器中內(nèi)部IP信息包的解密、加密,就可以構(gòu)建VPN,并且因使用多個VPN服務(wù)器,而可以分散在VPN上流動的信息包的傳輸處理負(fù)荷。
實施示例5圖17表示出經(jīng)由多個VPN服務(wù)器來實施本發(fā)明的狀況。在本實施示例中,將VPN服務(wù)器在因特網(wǎng)111上配置多個,并且VPN客戶機通過連接到最接近的VPN服務(wù)器,同其他VPN客戶機進行連接。在本實施示例中,VPN客戶機A102、B103、C104以及代表VPN服務(wù)器1501、VPN服務(wù)器A1502、B1503經(jīng)由因特網(wǎng)111來連接。
圖18表示按照本實施示例的通信過程示例。各VPN客戶機(102、103、104)與實施示例3同樣地,和代表VPN服務(wù)器1501建立單播的安全關(guān)聯(lián),代表VPN服務(wù)器1501在進行用戶認(rèn)證后,將VPN連接中利用的多播地址、多播地址的安全關(guān)聯(lián)以及VPN服務(wù)器的地址分發(fā)給VPN客戶機。此后,代表VPN服務(wù)器1501在進行用戶VPN管理處理之后,向收容客戶機A102的VPN服務(wù)器1502,分發(fā)VPN傳輸處理時所需要的多播地址管理表508以及單播組管理表507。
在本實施示例中,當(dāng)從代表VPN服務(wù)器1501向各VPN服務(wù)器1502、1503分發(fā)單播組管理表時,將各VPN服務(wù)器所收容VPN客戶機之外的單播地址變更成收容各VPN客戶機的VPN服務(wù)器的單播地址。圖19表示在本實施示例中從代表VPN服務(wù)器1501向VPN服務(wù)器B1502所分發(fā)的單播組管理表的概念圖。由于VPN客戶機A102、B103已收容到VPN服務(wù)器A1502中,因而設(shè)定服務(wù)器A的地址3ffe∷1000:a來替代各VPN客戶機的單播地址。
多播地址管理表508和單播組管理表507也可以只分發(fā)VPN客戶機連接時所變更的差別。此后,VPN服務(wù)器A1502、B1503對來自VPN客戶機A102、B103、C104的L2數(shù)據(jù)進行傳輸?shù)奶幚恚c第1實施示例相同。
根據(jù)上面實施示例5所示的結(jié)構(gòu),各VPN服務(wù)器不用直接傳輸發(fā)往其他VPN服務(wù)器所收容的VPN客戶機的信息包,就可以經(jīng)由收容目標(biāo)VPN客戶機的VPN服務(wù)器進行傳輸,并且不需要管理其他VPN服務(wù)器所收容的VPN客戶機的地址。
權(quán)利要求
1.一種服務(wù)器,經(jīng)由網(wǎng)絡(luò)與多個VPN客戶裝置連接,并具有存儲器和收發(fā)部,其特征為在上述存儲器中,使上述多個VPN客戶裝置共享的目標(biāo)地址和上述多個VPN客戶裝置共享的加密信息相對應(yīng)進行存儲,上述收發(fā)部使上述目標(biāo)地址和上述加密信息相對應(yīng),發(fā)送給上述多個VPN客戶裝置,當(dāng)上述收發(fā)部從上述多個VPN客戶裝置中的一個VPN客戶裝置接收到根據(jù)上述加密信息進行了加密的IP數(shù)據(jù)包并且該IP數(shù)據(jù)包包含上述目標(biāo)地址時,將該IP數(shù)據(jù)包以上述加密的狀態(tài),從上述收發(fā)部向上述多個VPN客戶裝置中上述一個VPN客戶裝置之外的VPN客戶裝置發(fā)送。
2.根據(jù)權(quán)利要求1所述的服務(wù)器,其特征為當(dāng)上述多個VPN客戶裝置形成的VPN組的結(jié)構(gòu)被變更了時,改變用于向?qū)儆谛碌腣PN組的VPN客戶裝置進行通告的加密信息。
3.根據(jù)權(quán)利要求1所述的服務(wù)器,其特征為上述多個VPN客戶裝置共享的地址是多播(multicast)地址。
4.根據(jù)權(quán)利要求1所述的服務(wù)器,其特征為上述加密信息是對上述多個VPN客戶裝置共享的每個目標(biāo)地址生成的安全性關(guān)聯(lián)(Security association)。
5.根據(jù)權(quán)利要求1所述的服務(wù)器,其特征為上述加密信息是對上述多個VPN客戶裝置共享的每個目標(biāo)地址生成的加密算法、密鑰或者SPI(Security Parameter Index)中的至少一個。
6.一種VPN客戶裝置,經(jīng)由網(wǎng)絡(luò)至少與一個其他的VPN客戶裝置連接,其特征為,具有存儲器,使與上述其他的VPN客戶機共享的目標(biāo)地址、及與上述其他的VPN客戶機共享的加密信息相對應(yīng)進行存儲;收發(fā)部,將根據(jù)上述加密信息被加密、并以目的地為上述共享目標(biāo)地址的IP數(shù)據(jù)包進一步用IP數(shù)據(jù)包進行封裝并發(fā)送。
7.根據(jù)權(quán)利要求6所述的VPN客戶裝置,其特征為上述收發(fā)部可以從經(jīng)由上述網(wǎng)絡(luò)連接的服務(wù)器接收上述共享的目標(biāo)地址和上述共享的加密信息。
8.根據(jù)權(quán)利要求6所述的VPN客戶裝置,其特征為上述共享的目標(biāo)地址是多播地址。
9.根據(jù)權(quán)利要求6所述的VPN客戶裝置,其特征為上述加密信息是對上述共享的每個目標(biāo)地址生成的安全性關(guān)聯(lián)。
10.一種VPN系統(tǒng),具備經(jīng)由網(wǎng)絡(luò)被連接的服務(wù)器及多個VPN客戶裝置,其特征為,上述服務(wù)器,具有存儲器,使上述多個VPN客戶裝置共享的目標(biāo)地址和上述多個VPN客戶裝置共享的加密信息相對應(yīng)進行存儲;接口,將上述共享的目標(biāo)地址和上述共享的加密信息通知給上述多個VPN客戶裝置;上述多個VPN客戶裝置,分別具有存儲器,使上述共享的目標(biāo)地址和上述共享的加密信息相對應(yīng)進行存儲;接口,將根據(jù)上述加密信息被加密、并以目的地為上述共享目標(biāo)地址的IP數(shù)據(jù)包進一步用IP數(shù)據(jù)包進行封裝,向上述服務(wù)器發(fā)送。
11.一種軟件,由服務(wù)器的控制部來執(zhí)行,該服務(wù)器與多個VPN客戶裝置連接,具有控制部、存儲器和收發(fā)部,其特征為,可以執(zhí)行VPN生成方法,該VPN生成方法具有以下步驟將上述多個VPN客戶裝置共享的目標(biāo)地址、和上述多個VPN客戶裝置共享的加密信息存儲到存儲器中的步驟;將上述共享的目標(biāo)地址和上述共享的加密信息從上述收發(fā)部向上述多個VPN客戶裝置發(fā)送的步驟。
全文摘要
本發(fā)明提供一種服務(wù)器、VPN客戶機、VPN系統(tǒng)及軟件,可以大幅減輕VPN服務(wù)器的處理負(fù)荷,并能夠使VPN服務(wù)器的處理能力得到提高。將VPN客戶機所發(fā)送的IP信息包的目標(biāo)地址作為多播地址,根據(jù)從VPN服務(wù)器所分發(fā)的多播地址的安全關(guān)聯(lián)進行加密。以VPN服務(wù)器的IP地址對加密后的IP信息包進行封裝,將其發(fā)送給VPN服務(wù)器。接收到該IP信息包后的VPN服務(wù)器根據(jù)IP信息包中所封裝IP信息包的多播地址,決定發(fā)送目的地的VPN客戶機,并以發(fā)送目的地VPN客戶機的IP地址進行封裝,將其發(fā)送給VPN客戶機。
文檔編號H04L12/46GK1756234SQ200510006838
公開日2006年4月5日 申請日期2005年1月28日 優(yōu)先權(quán)日2004年9月29日
發(fā)明者山田真理子, 矢野正, 新井真 申請人:日立通訊技術(shù)株式會社