專利名稱:計(jì)算機(jī)系統(tǒng)及計(jì)算機(jī)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明關(guān)于具備多個(gè)計(jì)算機(jī)的計(jì)算機(jī)系統(tǒng),尤其是關(guān)于確保在網(wǎng)絡(luò)上的通信的機(jī)密性及安全性的技術(shù)。
背景技術(shù):
近幾年來,普遍在使用IP(Internet Protocol網(wǎng)絡(luò)協(xié)議)網(wǎng)絡(luò)。因此,網(wǎng)絡(luò)安全技術(shù)很受重視。大家熟知為了在IP網(wǎng)絡(luò)上確保安全,在要通信的計(jì)算機(jī)之間建立安全的通信路由(SASecurityAssociation安全聯(lián)盟)的技術(shù)。
在建立SA的技術(shù)中,計(jì)算機(jī)在開始通信之前,通過交換包含加密方式或者密鑰等的SA信息,來建立SA。然后,計(jì)算機(jī),管理有關(guān)已經(jīng)建立好的SA的SA信息。然后,計(jì)算機(jī),根據(jù)正在管理的SA信息,進(jìn)行包的加密(加密encryption)或者解密。
又,非特許文獻(xiàn)1中展示了STUN協(xié)議的說明書。依據(jù)它,連接在NAT的終端,通過使用STUN協(xié)議和STUN服務(wù)器通信,可以事先預(yù)測由NAT分配的地址。
非特許文獻(xiàn)1RFC3489、網(wǎng)絡(luò)URLhttp//www.ietf.org/rfc/rfc3489.txt發(fā)明公開發(fā)明要解決的課題一般來說,計(jì)算機(jī),在為建立SA的通信和利用已經(jīng)建立好的SA的通信中,使用不同的地址。這種情況下,當(dāng)計(jì)算機(jī)之間的通信路徑上存在NAT(Network Address Translation網(wǎng)絡(luò)地址交換)或者負(fù)荷分散裝置時(shí),計(jì)算機(jī)就不能利用SA。
于是,解決這個(gè)問題的技術(shù)問世。依據(jù)這個(gè)技術(shù),計(jì)算機(jī)在建立SA之前,利用UPnP(Universal Plug and Play通用即插即用)或者STUN(Simple Traversal of UDP Through NATsNAT的UDP簡單穿越)等技術(shù),預(yù)約NAT上的地址。然后,計(jì)算機(jī),把預(yù)約好的地址通知給通信對方的計(jì)算機(jī)。但是,這種技術(shù)中,計(jì)算機(jī)必須具備UPnP等特殊的功能。
于是,計(jì)算機(jī)在為建立SA的通信和利用已經(jīng)建立好的SA的通信中使用相同地址的技術(shù)問世。但是,這種技術(shù),不能適用于具備確保安全的代理計(jì)算機(jī)的計(jì)算機(jī)系統(tǒng)。
本發(fā)明正是鑒于上述問題點(diǎn),其目的在于,在經(jīng)由NAT或者負(fù)荷分散裝置進(jìn)行通信的計(jì)算機(jī)之間建立SA。
解決課題的技術(shù)方案本發(fā)明的代表性實(shí)施例是,具備具有第1處理器、第1存儲(chǔ)器及第1接口的第1計(jì)算機(jī)和具有第2處理器、第2存儲(chǔ)器及第2接口的第2計(jì)算機(jī)以及控制上述第1計(jì)算機(jī)和上述第2計(jì)算機(jī)通信的通信控制裝置的計(jì)算機(jī)系統(tǒng),其特征在于,上述通信控制裝置,當(dāng)從上述第1計(jì)算機(jī)接收包時(shí),轉(zhuǎn)換接收到的包的地址,并傳輸給上述第2計(jì)算機(jī),上述第2存儲(chǔ)器,存儲(chǔ)地址信息的一部分不明確的SA信息即SA候補(bǔ)信息,上述第2處理器,當(dāng)從上述第1計(jì)算機(jī)接收由上述第1計(jì)算機(jī)加密的包時(shí),使用上述SA候補(bǔ)信息對該加密包進(jìn)行解密,當(dāng)該加密包解密成功時(shí),根據(jù)上述解密中使用過的上述SA候補(bǔ)信息及該加密包的地址信息,生成SA信息。
發(fā)明效果依據(jù)本發(fā)明的代表實(shí)施例,可以在經(jīng)由NAT或者負(fù)荷分散裝置進(jìn)行通信的計(jì)算機(jī)之間建立SA。
實(shí)施發(fā)明的最佳實(shí)施例附圖簡單說明
圖1是第1實(shí)施例的計(jì)算機(jī)系統(tǒng)的方框圖;
圖2是第1實(shí)施例的發(fā)起器的方框圖;圖3是第1實(shí)施例的應(yīng)答器的方框圖;圖4是第1實(shí)施例的發(fā)起器的SA信息表組成圖;圖5是第1實(shí)施例的應(yīng)答器的SA信息表組成圖;圖6是第1實(shí)施例的應(yīng)答器的SA候補(bǔ)信息表組成圖;圖7是第1實(shí)施例計(jì)算機(jī)系統(tǒng)的SA建立處理的時(shí)序圖;圖8是第1實(shí)施例的SA信息的說明圖;圖9是第1實(shí)施例的擴(kuò)展SA處理程序的接收包處理流程圖;圖10是第1實(shí)施例的擴(kuò)展SA處理程序的發(fā)送包處理流程圖;圖11是第2實(shí)施例的應(yīng)答器的方框圖;圖12是第2實(shí)施例的應(yīng)答器的SA信息與SA候補(bǔ)信息表的組成圖;圖13是對第2實(shí)施例的擴(kuò)展SA處理程序的接收包處理流程圖;圖14是第3實(shí)施例計(jì)算機(jī)系統(tǒng)的方框圖;圖15是第3實(shí)施例計(jì)算機(jī)系統(tǒng)的SA建立處理時(shí)序圖;圖16是第4實(shí)施例計(jì)算機(jī)系統(tǒng)的方框圖;圖17是第4實(shí)施例計(jì)算機(jī)系統(tǒng)的SA建立處理時(shí)序圖;圖18A是對第4實(shí)施例的擴(kuò)展SA處理程序的接收包處理流程圖;圖18B是對第4實(shí)施例的擴(kuò)展SA處理程序的接收包處理流程圖;圖19是第5實(shí)施例計(jì)算機(jī)系統(tǒng)的方框圖;圖20是第5實(shí)施例計(jì)算機(jī)系統(tǒng)的SA建立處理時(shí)序圖;圖21A是第5實(shí)施例的擴(kuò)展SA處理程序的接收包處理流程圖;圖21B是第5實(shí)施例的擴(kuò)展SA處理程序的接收包處理的流程圖。
標(biāo)號說明
1通信網(wǎng)2A、2B發(fā)起器3應(yīng)答器4NAT5SA候補(bǔ)信息數(shù)據(jù)庫6SIP代理服務(wù)器7負(fù)荷分散裝置9通信線路21IF22CPU23存儲(chǔ)器24數(shù)據(jù)通路31IF32CPU33存儲(chǔ)器34數(shù)據(jù)通路231網(wǎng)絡(luò)處理程序232網(wǎng)絡(luò)應(yīng)用程序233SA處理程序234SA信息表331網(wǎng)絡(luò)處理程序332網(wǎng)絡(luò)應(yīng)用程序333SA處理程序334SA信息表335SA候補(bǔ)信息表下面,參照圖示說明本發(fā)明的實(shí)施例。
圖1是第1實(shí)施例的計(jì)算機(jī)系統(tǒng)的方框圖。
計(jì)算機(jī)系統(tǒng)具備通信網(wǎng)1、發(fā)起器2(initiator)、應(yīng)答器(responder)3、NAT4、SIP代理服務(wù)器6(SIPproxy)及通信線路9。
發(fā)起器2,在圖2中后述,不過是請求應(yīng)答器3建立SA(SecurityAssociation)的計(jì)算機(jī)。
而且,SA是發(fā)起器2和應(yīng)答器3之間建立的安全通信路徑。又,本實(shí)施例的SA,不僅僅表示IPsec SA,還包含IPsec中的安全策略及IPsec SA。
應(yīng)答器3,在圖3中后述,是被發(fā)起器2請求建立SA的計(jì)算機(jī)。應(yīng)答器3,一旦被請求建立SA,就使用SIP(Session Initiation Protocol會(huì)話啟動(dòng)協(xié)議)消息,建立SA。
發(fā)起器2及應(yīng)答器3,可以是PC(Personal Computer電腦)或者如電話終端等的固定終端,也可以是如手機(jī)或PDA(PersonalDigital Assistant個(gè)人數(shù)字助理)等移動(dòng)終端。
而且,發(fā)起器2,由在每個(gè)通信中所起的作用來決定,所以也可以根據(jù)通信作為應(yīng)答器工作。同樣,應(yīng)答器3,也是決定于在每個(gè)通信中所起的作用,根據(jù)通信也可以作為發(fā)起器工作。另外,發(fā)起器2,也可以設(shè)定為不作為應(yīng)答器工作。同樣,應(yīng)答器3,也可以設(shè)定為不作為發(fā)起器工作。
NAT4是具備NAT(Network Address Translation網(wǎng)絡(luò)地址交換)功能的通信機(jī)器。NAT4,例如是寬帶路由器或者防火墻等。具體地說,NAT4,在包傳輸時(shí),轉(zhuǎn)換該包的地址信息。
SIP代理服務(wù)器6,設(shè)置于發(fā)起器2和應(yīng)答器3之間的通信路徑上,傳輸SIP消息。
NAT4、SIP代理服務(wù)器6及應(yīng)答器3通過通信線路9連接于通信網(wǎng)1。也就是說,發(fā)起器2,通過通信線路9和NAT4連接。也就是說,發(fā)起器2通過NAT4和通信網(wǎng)1連接。
圖2是第1實(shí)施例發(fā)起器2的方框圖。
發(fā)起器2,具備接口(IF)21、CPU22及存儲(chǔ)器23。IF21、CPU22及存儲(chǔ)器23,通過數(shù)據(jù)通路24相互連接。
IF21,通過通信線路9,和NAT4等外部裝置連接。
CPU22,通過執(zhí)行存儲(chǔ)在存儲(chǔ)器23中的程序,進(jìn)行各種處理。例如,CPU22,通過IF21收發(fā)包。
存儲(chǔ)器23,存儲(chǔ)著網(wǎng)絡(luò)處理程序231(網(wǎng)絡(luò)處理程序networkprocessing program)、網(wǎng)絡(luò)應(yīng)用程序(網(wǎng)絡(luò)AP)232(網(wǎng)絡(luò)應(yīng)用程序network application,在日文中如果寫作應(yīng)用比較長,所以簡寫為AP,如果是英文,也可以不縮寫)、SA處理程序233(SA處理程序SAprocessing)及SA信息表234。
網(wǎng)絡(luò)處理程序231,通過通信網(wǎng)1收發(fā)數(shù)據(jù)。網(wǎng)絡(luò)處理程序231,例如是TCP/IP(Transmission Control Protocol/Internet Protocol傳輸控制協(xié)議/網(wǎng)絡(luò)協(xié)議)堆棧。
網(wǎng)絡(luò)AP232,使用網(wǎng)絡(luò)處理程序231,在和應(yīng)答器3的網(wǎng)絡(luò)AP之間收發(fā)數(shù)據(jù)。本實(shí)施例中,網(wǎng)絡(luò)AP232設(shè)為Web瀏覽器。
SA處理程序233,根據(jù)存儲(chǔ)在SA信息表234中的SA信息,建立SA。而且,SA信息是,為了建立SA在發(fā)起器2和應(yīng)答器3之間被交換的信息。由此,SA處理程序233,建立加密或者認(rèn)證(認(rèn)證authentication)等安全。而且,網(wǎng)絡(luò)程序231,在收發(fā)包時(shí),調(diào)用SA處理程序233。
又,SA處理程序233,為了建立SA,和應(yīng)答器3交換SA信息。然后,SA處理程序233,更新SA信息表234。
SA信息表234,在圖4中后述,是存儲(chǔ)SA信息的表。而且,SA信息,可以存儲(chǔ)在如SA信息表234這樣的一個(gè)表上,也可以如IPsec,分存在多個(gè)表上。
本說明圖,只是表示作為發(fā)起器2工作時(shí)所需要的最低限度的組成。因此,作為發(fā)起器2及應(yīng)答器3工作的計(jì)算機(jī),具備應(yīng)答器3(圖3)的組成。
圖3是第1實(shí)施例應(yīng)答器3的方框圖。
應(yīng)答器3,具備接口(IF)31、CPU32及存儲(chǔ)器33。IF31、CPU32及存儲(chǔ)器33通過數(shù)據(jù)通路34相互連接。
IF31,通過通信線路9及通信網(wǎng)1,和外部裝置連接。
CPU32,通過執(zhí)行存儲(chǔ)在存儲(chǔ)器33中的程序,進(jìn)行各種處理。例如,CPU32,通過IF31收發(fā)包。
存儲(chǔ)器33,存儲(chǔ)著網(wǎng)絡(luò)處理程序331、網(wǎng)絡(luò)應(yīng)用程序(網(wǎng)絡(luò)AP)332、擴(kuò)展SA處理程序333(擴(kuò)展SA處理程序extended SA processingprogram)、SA信息表334及SA候補(bǔ)信息表335。
網(wǎng)絡(luò)處理程序331,通過通信網(wǎng)1收發(fā)數(shù)據(jù)。網(wǎng)絡(luò)處理程序331,例如是TCP/IP(Transmission Control Protocol/Internet Protocol傳輸控制協(xié)議/網(wǎng)絡(luò)協(xié)議)堆棧等。
網(wǎng)絡(luò)AP332,使用網(wǎng)絡(luò)處理程序331,在和發(fā)起器2的網(wǎng)絡(luò)AP232之間收發(fā)數(shù)據(jù)。本實(shí)施例中,網(wǎng)絡(luò)AP232設(shè)為Web瀏覽器。
擴(kuò)展SA處理程序333,根據(jù)存儲(chǔ)在SA信息表334中的SA信息,建立SA。由此,擴(kuò)展SA處理程序333,建立加密或者認(rèn)證等的安全。而且,網(wǎng)絡(luò)處理程序331,在收發(fā)包時(shí),調(diào)用擴(kuò)展SA處理程序333。
又,擴(kuò)展SA處理程序333,為了建立SA,和發(fā)起器2交換SA信息。然后,擴(kuò)展SA處理程序333更新SA信息表334。
又,擴(kuò)展SA處理程序333,把地址信息上具有不明確部分的SA信息作為SA候補(bǔ)信息處理。然后,擴(kuò)展SA處理程序333,通過把SA候補(bǔ)信息存儲(chǔ)在SA候補(bǔ)信息表335來管理SA候補(bǔ)信息。還有,擴(kuò)展SA處理程序333,根據(jù)存儲(chǔ)在SA候補(bǔ)信息表335中的SA候補(bǔ)信息生成新的SA信息。
SA信息表334,在圖5中后述,是存有SA信息的表。而且SA信息,可以存儲(chǔ)在如SA信息表334這樣的一個(gè)表上,也可以如IPsec,分存在多個(gè)表上。
SA候補(bǔ)信息表335,在圖6中后述,是存有SA候補(bǔ)信息的表。而且,SA候補(bǔ)信息可以存儲(chǔ)在如SA候補(bǔ)信息表335這樣的一個(gè)表上,也可以分存在多個(gè)表上。
圖4是第1實(shí)施例的發(fā)起器2的SA信息表234的組成圖。
SA信息表234,包含方向2341、始點(diǎn)IP地址2342、始點(diǎn)端口2343、終點(diǎn)IP地址2344、終點(diǎn)端口2345、協(xié)議2346、SPI2347、密鑰數(shù)據(jù)2348及有效時(shí)間2349。
SA信息表234的一個(gè)記錄上存儲(chǔ)著一個(gè)SA信息。
方向2341,表示該SA信息的SA適用在包接收時(shí)或者包發(fā)送時(shí)的哪方。具體地說,當(dāng)發(fā)起器2接收包時(shí)適用的SA的SA信息方向2341,存儲(chǔ)入站(inbound)。另外,當(dāng)發(fā)起器2發(fā)送包時(shí)適用的SA的SA信息方向2341,存儲(chǔ)出站(outbound)。
始點(diǎn)IP地址2342,是適用該SA信息的SA的包的發(fā)送地IP地址。始點(diǎn)端口2343是適用該SA信息的SA的包的發(fā)送地端口號。
終點(diǎn)IP地址2344是適用該SA信息的SA的包的發(fā)送目的地的IP地址。終點(diǎn)端口2345是適用該SA信息的SA的包的發(fā)送目的地的端口號。
協(xié)議2346,是適用該SA信息的SA的包的協(xié)議。SPI2347是發(fā)起器2和應(yīng)答器3唯一識別該SA信息的標(biāo)識符。
密鑰數(shù)據(jù)2348是將為適用該SA信息的SA的包加密或解密的信息。
有效時(shí)間2349,是把該SA信息的SA適用在包的時(shí)間。也就是說,從該SA信息的生成時(shí)點(diǎn)開始一旦經(jīng)過有效時(shí)間2349,發(fā)起器2就從SA信息表234刪除該SA信息。
圖5是第1實(shí)施例的應(yīng)答器3的SA信息表334的組成圖。
SA信息表334,包含方向3341、始點(diǎn)IP地址3342、始點(diǎn)端口3343、終點(diǎn)IP地址3344、終點(diǎn)端口3345、協(xié)議3346、SPI3347、密鑰數(shù)據(jù)3348及有效時(shí)間3349。
SA信息表334的一個(gè)記錄上存儲(chǔ)著一個(gè)SA信息。
方向3341,表示該SA信息的SA適用在包接收時(shí)或者包發(fā)送時(shí)的哪方。具體地說,當(dāng)應(yīng)答器3接收包時(shí)適用的SA的SA信息方向3341,存儲(chǔ)入站(inbound)。另外,當(dāng)應(yīng)答器3發(fā)送包時(shí)適用的SA的SA信息方向3341,存儲(chǔ)出站(outbound)。
始點(diǎn)IP地址3342,是適用該SA信息的SA的包的發(fā)送地IP地址。始點(diǎn)端口3343是適用該SA信息的SA的包的發(fā)送地端口號。
終點(diǎn)IP地址3344是適用該SA信息的SA的包的發(fā)送目的地的IP地址。終點(diǎn)端口3345是適用該SA信息的SA的包的發(fā)送目的地的端口號。
協(xié)議3346,是適用該SA信息的SA的包的協(xié)議。SPI3347是發(fā)起器2和應(yīng)答器3唯一識別該SA信息的標(biāo)識符。
密鑰數(shù)據(jù)3348是為將適用該SA信息的SA的包加密或解密的信息。
有效時(shí)間3349,是把該SA信息的SA適用在包的時(shí)間。也就是說,從該SA信息的生成時(shí)點(diǎn)開始一旦經(jīng)過有效時(shí)間3349,應(yīng)答器3就從SA信息表234刪除該SA信息。
圖6是第1實(shí)施例的應(yīng)答器3的SA候補(bǔ)信息表335的組成圖。
SA候補(bǔ)信息表335,包含對ID3350(對IDpair ID)、方向3351、始點(diǎn)IP地址3352、始點(diǎn)端口3353、終點(diǎn)IP地址3354、終點(diǎn)端口3355、協(xié)議3356、SPI3357、密鑰數(shù)據(jù)3358及SA的有效時(shí)間3359以及SA候補(bǔ)的有效時(shí)間3360。
SA候補(bǔ)信息表335的一個(gè)記錄上存儲(chǔ)著一個(gè)SA候補(bǔ)信息。
對ID3350是該SA候補(bǔ)信息所屬對的唯一標(biāo)識符。而且,適用在應(yīng)答器3從發(fā)起器2所接收的包的SA的SA候補(bǔ)信息,和適用在應(yīng)答器3對該發(fā)起器2所發(fā)送的包的SA的SA候補(bǔ)信息,作為一對處理。
方向3351,表示根據(jù)該SA候補(bǔ)信息生成的SA信息的SA適用在包接收時(shí)或者包發(fā)送時(shí)的哪方。具體地說,當(dāng)應(yīng)答器3接收包時(shí)適用的SA的SA候補(bǔ)信息方向3351,存儲(chǔ)入站(inbound)。另外,當(dāng)應(yīng)答器3發(fā)送包時(shí)適用的SA的SA候補(bǔ)信息方向3351,存儲(chǔ)出站(outbound)。
始點(diǎn)IP地址3352,是適用根據(jù)該SA候補(bǔ)信息生成的SA信息的SA的包源IP地址。始點(diǎn)端口3353是適用根據(jù)該SA候補(bǔ)信息生成的SA信息的SA的包發(fā)送地端口號。
終點(diǎn)IP地址3354是適用根據(jù)該SA候補(bǔ)信息生成的SA信息的SA的包發(fā)送目的地的IP地址。終點(diǎn)端口3355是適用根據(jù)該SA候補(bǔ)信息生成的SA信息的SA的包發(fā)送目的地的端口號。
而且,SA候補(bǔ)信息是地址信息上具有不明確部分的SA信息。因此,SA候補(bǔ)信息表335中,始點(diǎn)IP地址3352或終點(diǎn)IP地址3354中的有一方不確定。同樣,始點(diǎn)端口3353或者終點(diǎn)端口3355中的有一方不確定。
協(xié)議3356,是適用根據(jù)該SA候補(bǔ)信息生成的SA信息的SA的包協(xié)議。SPI3357是根據(jù)該SA候補(bǔ)信息生成的SA信息的唯一標(biāo)識符。
密鑰數(shù)據(jù)3358是為將適用根據(jù)該SA候補(bǔ)信息生成的SA信息的SA的包加密或解密的信息。
SA的有效時(shí)間3359,是把根據(jù)該SA候補(bǔ)信息生成的SA信息的SA適用在包的時(shí)間。也就是說,從該SA候補(bǔ)信息生成完成時(shí)開始一旦經(jīng)過有效時(shí)間3359時(shí),應(yīng)答器3就刪除根據(jù)該SA候補(bǔ)信息生成好的SA信息。
SA候補(bǔ)的有效時(shí)間3360,是應(yīng)答器3根據(jù)該SA候補(bǔ)信息可以生成SA信息的時(shí)間。也就是說,從該SA候補(bǔ)信息被生成完成時(shí)開始一旦經(jīng)過SA候補(bǔ)有效時(shí)間3360,應(yīng)答器3就從SA候補(bǔ)信息表335刪除該SA候補(bǔ)信息。由此,應(yīng)答器3,可以從SA候補(bǔ)信息表335中刪除不需要的SA候補(bǔ)信息。
圖7是第1實(shí)施例計(jì)算機(jī)系統(tǒng)的SA建立處理的時(shí)序圖。
這個(gè)時(shí)序圖的計(jì)算機(jī)系統(tǒng),對在發(fā)起器2A中工作的Web瀏覽器和在應(yīng)答器3中工作的Web瀏覽器之間的通信,進(jìn)行加密。為此,計(jì)算機(jī)系統(tǒng),在發(fā)起器2A和應(yīng)答器3之間建立SA。
這里,發(fā)起器2A的IP地址是172.16.0.1。又,NAT4在通信網(wǎng)1方的IP地址是192.0.2.4。又,應(yīng)答器3的IP地址是192.0.2.3。又,SIP代理服務(wù)器6的IP地址是192.0.2.6。
首先,發(fā)起器2A,當(dāng)達(dá)到某些契機(jī)時(shí),就判斷為該發(fā)起器2A和應(yīng)答器3之間有必要建立SA。
這里,發(fā)起器2A的網(wǎng)絡(luò)處理程序231,從發(fā)起器2A的網(wǎng)絡(luò)AP232接收包發(fā)送請求。這樣,該網(wǎng)絡(luò)處理程序231,對發(fā)起器2A的SA處理程序233請求建立SA。然后,當(dāng)該SA處理程序233接受SA建立請求時(shí),發(fā)起器2A就判斷為,在該發(fā)起器2A的端口2345和應(yīng)答器3的端口80之間有必要建立SA。
這樣,發(fā)起器2A的SA處理程序233,從該發(fā)起器2A的端口5060,把包含邀請(INVITE)消息的包發(fā)往SIP代理服務(wù)器6(S101)。而且,發(fā)起器2A的端口5060是SIP的缺省端口。
邀請(INVITE)消息的主體部(body)上存儲(chǔ)著建議用的SA信息。建議用的SA信息中包含從應(yīng)答器3不能開始通信的地址172.16.0.12345。關(guān)于地址172.16.0.12345進(jìn)行說明。該地址中的冒號之前的172.16.0.1是IP地址,該地址中的冒號之后的2345是端口號。
這里,說明存儲(chǔ)在SIP消息的主體部里的XML(Extensible MarkupLanguage可擴(kuò)展標(biāo)記語言)格式的SA信息。而且,SA信息,也可以以其它格式存儲(chǔ)在SIP消息里。
圖8是第1實(shí)施例的SA信息的說明圖。
SA信息,包含策略信息901、發(fā)起地址信息902、應(yīng)答地址信息903及密鑰生成信息904(密鑰生成信息key generate information)。
策略信息901中包含該SA信息的SPI及有效時(shí)間。發(fā)起地址信息902包含建立該SA信息的SA的發(fā)起器2A的IP地址、端口號及協(xié)議。應(yīng)答地址信息903包含建立該SA信息的SA的應(yīng)答器3的IP地址、端口號及協(xié)議。密鑰生成信息904存儲(chǔ)用于生成該SA信息的密鑰數(shù)據(jù)的信息。
這里,返回圖7。
NAT4,從發(fā)起器2A接收包含INVITE消息的包。這樣,NAT4,對接收到的包的始點(diǎn)地址,分配該NAT4的地址(S102)。這里,NAT4,對包的始點(diǎn)地址172.16.0.15060分配該NAT4的地址192.0.2.41234。
然后,NAT4,把接收到的包的始點(diǎn)地址轉(zhuǎn)換為分配到的地址。之后,NAT4,把轉(zhuǎn)換過地址的包發(fā)給SIP代理服務(wù)器6(S103)。以后,在發(fā)起器2A和SIP代理服務(wù)器6之間的通信中,由NAT4分配的地址作為發(fā)起器2A的地址來使用。
然后,SIP代理服務(wù)器6,從NAT接收包含INVITE消息的包。這樣,SIP代理服務(wù)器6,把接收到的包傳輸給應(yīng)答器3(S104)。
應(yīng)答器3,從SIP代理服務(wù)器6接收包含INVITE消息的包。這樣,應(yīng)答器3,以網(wǎng)絡(luò)處理程序331處理接收到的包。
網(wǎng)絡(luò)處理程序331,判斷為接收到的包包含SA信息,并調(diào)用擴(kuò)展SA處理程序333。
擴(kuò)展處理程序333,檢查包含在接收到的包中的建議用的SA信息。然后,擴(kuò)展SA處理程序333,根據(jù)檢查的建議用SA信息,生成應(yīng)答用的SA信息。而且,應(yīng)答用的SA信息,是擴(kuò)展SA處理程序333準(zhǔn)許使用的SA信息。
例如,擴(kuò)展SA處理程序333,當(dāng)接收到多個(gè)建議用的SA信息時(shí),從接收到的建議用的SA信息中,選擇準(zhǔn)許使用的SA信息。然后,擴(kuò)展SA處理程序333,把選擇的SA信息作為應(yīng)答用SA信息。
然后,擴(kuò)展SA處理程序333,把生成好的應(yīng)答用SA信息存儲(chǔ)在成功應(yīng)答消息(成功應(yīng)答消息success response message)里。而且,成功應(yīng)答消息,例如是200OK(OK同意)消息。然后,擴(kuò)展SA處理程序333,生成包含成功應(yīng)答消息的包。
之后,應(yīng)答器3的網(wǎng)絡(luò)處理程序331,把擴(kuò)展SA處理程序333生成好的包發(fā)給SIP代理服務(wù)器6(S105)。
然后,SIP代理服務(wù)器6,從應(yīng)答器3的網(wǎng)絡(luò)處理程序331中接收包含成功應(yīng)答消息的包。然后,SIP代理服務(wù)器6,在步驟S103中接收到的包含INVITE消息的包的始點(diǎn)地址,傳輸包含接收到的成功應(yīng)答消息的包。也就是說,SIP代理服務(wù)器6,把包含接收到的成功應(yīng)答消息的包發(fā)給NAT4(S106)。
然后,NAT4,從SIP代理服務(wù)器6接收包含成功應(yīng)答消息的包。之后,NAT4,向發(fā)起器2A傳輸接收到的包(S107)。
然后,發(fā)起器2A,從NAT4接收包含成功應(yīng)答消息的包。如上所述,發(fā)起器2A及應(yīng)答器3交換SA信息。
然后,發(fā)起器2A,把包含ACK消息的包經(jīng)由NAT4發(fā)給SIP代理服務(wù)器6(S108、S109)。
然后,發(fā)起器2A,根據(jù)步驟S107中接收到的包,更新SA信息表234。
具體地說,發(fā)起器2A,從步驟S107中接收到的包中,抽出SA信息。發(fā)起器2A,對SA信息表234僅僅是追加抽出的SA信息所指定的SA數(shù)量的新記錄。然后,發(fā)起器2A,對有關(guān)接收包時(shí)適用的SA的記錄方向2341中存儲(chǔ)入站(inbound)。另外,發(fā)起器2A,對有關(guān)發(fā)送包時(shí)適用的SA的記錄方向2341中存儲(chǔ)出站(outbound)。
然后,發(fā)起器2A,從抽出的SA信息的發(fā)起地址信息902中抽出IP地址、端口號及協(xié)議。然后,發(fā)起器2A,當(dāng)向方向2341里存儲(chǔ)出站(outbound)時(shí),把抽出的IP地址存儲(chǔ)在新記錄的始點(diǎn)IP地址2342中。另外,發(fā)起器2A,當(dāng)向方向2341里存儲(chǔ)入站(inbound)時(shí),把抽出的IP地址存儲(chǔ)在新記錄的終點(diǎn)IP地址2344中。
然后,發(fā)起器2A,當(dāng)方向2341里存儲(chǔ)出站(outbound)時(shí),把抽出的端口號存儲(chǔ)在新的記錄的始點(diǎn)端口2343中。另外,發(fā)起器2A,當(dāng)向方向2341中存儲(chǔ)入站(inbound)時(shí),把抽出的端口號,存儲(chǔ)在新的記錄的終點(diǎn)端口2345中。然后,把抽出的協(xié)議,存儲(chǔ)在新的記錄的協(xié)議2346中。
然后,發(fā)起器2A,從抽出的SA信息的應(yīng)答地址信息903中抽出IP地址信息及端口號。之后,發(fā)起器2A,當(dāng)向方向2341里存儲(chǔ)出站(outbound)時(shí),把抽出的IP地址存儲(chǔ)在新的記錄的終點(diǎn)IP地址2344中。另外,發(fā)起器2A,當(dāng)向方向2341里存儲(chǔ)入站(inbound)時(shí),把抽出的IP地址存儲(chǔ)在新的記錄的始點(diǎn)IP地址2342中。
然后,發(fā)起器2A,當(dāng)向方向2341里存儲(chǔ)出站(outbound)時(shí),把抽出的端口號存儲(chǔ)在新的記錄的終點(diǎn)端口2345中。另外,發(fā)起器2A,當(dāng)向方向2341中存儲(chǔ)入站(inbound)時(shí),把抽出的端口號,存儲(chǔ)在新的記錄的始點(diǎn)端口2343中。
然后,發(fā)起器2A,從抽出的SA信息的策略信息901中,抽出SPI及有效時(shí)間。之后,把抽出的SPI存儲(chǔ)在新記錄的SPI2347中。然后,把抽出的有效時(shí)間,存儲(chǔ)在新的記錄的有效時(shí)間2348中。
然后,發(fā)起器2A,根據(jù)抽出的SA信息的密鑰生成信息904,生成密鑰數(shù)據(jù)。之后,發(fā)起器2A,把生成的密鑰數(shù)據(jù)存儲(chǔ)在新的記錄的密鑰數(shù)據(jù)2348中。
如上所述,發(fā)起器2A,更新SA信息表234(S111)。而且,發(fā)起器2A,也可以在所需要的信息齊全時(shí)更新SA信息表234(S110)。
另外,SIP代理服務(wù)器6,從發(fā)起器2A接收包含ACK消息的包。這樣,SIP代理服務(wù)器6,把接收到的包傳輸給應(yīng)答器3(S110)。
然后,應(yīng)答器3,從SIP代理服務(wù)器6接收包含ACK消息的包。這樣,應(yīng)答器3,判斷能否和發(fā)起器2A通知的地址直接通信。
具體地說,應(yīng)答器3,從包含在步驟S104中接收的包的SA信息中,抽出發(fā)起地址信息902。然后,應(yīng)答器3,判斷能否和包含抽出的地址信息902的地址172.16.0.12345直接通信。
例如,應(yīng)答器3,使用以下三個(gè)方法中的任意個(gè),判斷該應(yīng)答器3和發(fā)起器2A之間的通信路徑上是否存在NAT4。然后,當(dāng)存在NAT4時(shí),應(yīng)答器3就判斷為不能直接和發(fā)起器2A通知的地址通信。另外,當(dāng)不存在NAT4,應(yīng)答器3就判斷為可以和發(fā)起器2A通知的地址直接通信。
(1)在SA信息的交換中,應(yīng)答器3檢測NAT4的存在。
(2)在SA信息的交換中,SIP代理服務(wù)器6檢測NAT4的存在。然后,SIP代理服務(wù)器6向?qū)?yīng)答器4通知NAT4的存在。
(3)在SA信息的交換中,發(fā)起器2對應(yīng)答器3通知NAT4的存在。
首先,說明方法(1)的具體例子。例如,應(yīng)答器3,判斷發(fā)起器2A通知的IP地址是否為專用IP地址。然后,應(yīng)答器3,當(dāng)發(fā)起器2A通知的IP地址判斷為是專用IP地址時(shí),就判斷為通信路徑上存在NAT4。因此,方法(1)的情況,發(fā)起器2及SIP代理服務(wù)器6,無需進(jìn)行特別的處理。
其次說明方法(2)的具體例子。例如,SIP代理服務(wù)器6,通過比較步驟S103中接收到的包的地址信息和存儲(chǔ)在該包中的SA信息的發(fā)起地址信息902,檢測NAT4的存在。然后,SIP代理服務(wù)器6檢測出NAT4的存在時(shí),對步驟S104中要傳輸給應(yīng)答器3的包頭或者主體部,插入表示NAT4存在的字符串。然后,應(yīng)答器3,當(dāng)從步驟S104中接收到的包檢測出表示NAT4存在的字符串時(shí),就判斷為通信路徑上存在NAT4。
下面,說明方法(3)的具體例子。例如,發(fā)起器2,事先通知NAT4的存在。而且,發(fā)起器2,也可以使用STUN服務(wù)器等事先檢測NAT4的存在。然后,發(fā)起器2,當(dāng)確認(rèn)了NAT4的存在時(shí),對步驟S101中要發(fā)送的包頭或者主體部,插入表示NAT4的存在的字符串。然后,應(yīng)答器3,從步驟S104中接收到的包檢測出表示NAT4存在的字符串時(shí),判斷為通信路徑上存在NAT4。
然后,應(yīng)答器3,當(dāng)判斷為可以和發(fā)起器2A通知的地址直接通信時(shí),更新SA信息表334(圖5)。具體地說,應(yīng)答器3,根據(jù)步驟S105中發(fā)送的包,更新SA信息表334。應(yīng)答器3的SA信息表334的更新處理,和發(fā)起器2A的SA信息表234的更新處理(S111)一樣,所以省略說明。
另外,應(yīng)答器3,當(dāng)判斷為不能和發(fā)起器2A通知的地址直接通信時(shí),更新SA候補(bǔ)信息表335(圖6)。
首先,應(yīng)答器3,根據(jù)步驟S105中發(fā)送的包,更新SA候補(bǔ)信息表335。
具體地說,應(yīng)答器3,從步驟S105中發(fā)送的包,抽出SA信息。應(yīng)答器3,對SA候補(bǔ)信息表335僅僅追加抽出的SA信息所指定的SA數(shù)量的新記錄。
應(yīng)答器3,對新的記錄對ID3350,對所有新追加的記錄,存儲(chǔ)相同值。這時(shí),應(yīng)答器3,選擇和其它記錄的對ID3350不重復(fù)的值,存儲(chǔ)在新記錄的對ID3350中。
然后,應(yīng)答器3,對有關(guān)接收包時(shí)適用的SA的記錄方向3351中存儲(chǔ)入站(inbound)。另外,應(yīng)答器3,對有關(guān)發(fā)送包時(shí)適用的SA的記錄方向3351中存儲(chǔ)出站(outbound)。
然后,當(dāng)應(yīng)答器3,在向方向3351中存儲(chǔ)入站(inbound)時(shí),對新的記錄的始點(diǎn)IP地址3352及始點(diǎn)端口3353存儲(chǔ)不確定。另外,當(dāng)方向3351中存儲(chǔ)出站(outbound)時(shí),在向新的記錄的終點(diǎn)IP地址3354及終點(diǎn)端口3355存儲(chǔ)不確定。
然后,應(yīng)答器3,從抽出的SA信息的應(yīng)答地址信息903中,抽出IP地址及端口號。
然后,應(yīng)答器3,在向方向3351中存儲(chǔ)入站(inbound)時(shí),把抽出的IP地址存儲(chǔ)在新的記錄的終點(diǎn)IP地址3354中。另外,應(yīng)答器3,在向方向3351中存儲(chǔ)出站(outbound)時(shí),把抽出的IP地址存儲(chǔ)在新的記錄的始點(diǎn)IP地址3352中。
然后,應(yīng)答器3,在向方向3351中存儲(chǔ)入站(inbound)時(shí),把抽出的端口號存儲(chǔ)在新的記錄的終點(diǎn)端口3355中。另外,應(yīng)答器3,在向方向3351中存儲(chǔ)出站(outbound)時(shí),把抽出的端口號存儲(chǔ)在新的記錄的始點(diǎn)端口號3353中。
然后,應(yīng)答器3,從抽出的SA信息的策略信息901中,抽出SPI及有效時(shí)間。之后,把抽出的SPI,存儲(chǔ)在新的記錄的SPI3357中。然后,把抽出的有效時(shí)間,存儲(chǔ)在新記錄的SA有效時(shí)間3359中。
然后,應(yīng)答器3,根據(jù)抽出的SA信息的密鑰生成信息904,生成密鑰數(shù)據(jù)。例如,應(yīng)答器3,通過Diffie-Hellman密鑰交換(密鑰交換key exchange)算法,生成密鑰數(shù)據(jù)。然后,應(yīng)答器3把生成的密鑰數(shù)據(jù)存儲(chǔ)在新的記錄的密鑰數(shù)據(jù)3358中。
然后,應(yīng)答器3把事先設(shè)定的值存儲(chǔ)在新記錄的SA候補(bǔ)有效時(shí)間3360中。
如上所述,應(yīng)答器3,更新SA候補(bǔ)信息表335(S112)。
之后,設(shè)發(fā)起器2A的網(wǎng)絡(luò)AP232,請求將發(fā)起器2A的網(wǎng)絡(luò)處理程序231,由發(fā)起器2A的端口2345向應(yīng)答器3的端口80發(fā)送包。這時(shí),網(wǎng)絡(luò)AP232請求發(fā)送的包,也可以是將成為了SA建立契機(jī)的包進(jìn)行緩沖的包。
發(fā)起器2A的網(wǎng)絡(luò)處理程序231,由網(wǎng)絡(luò)AP232請求發(fā)送包。這樣,網(wǎng)絡(luò)處理程序231,為了對發(fā)送包提供安全功能,調(diào)用發(fā)起器2A的SA處理程序233。
SA處理程序233,從發(fā)送包抽出該發(fā)送包的始點(diǎn)IP地址、始點(diǎn)端口、終點(diǎn)IP地址及終點(diǎn)端口。然后,從SA信息表234中選擇抽出的始點(diǎn)IP地址和SA信息表234的始點(diǎn)IP地址2342一致的記錄。
然后,SA處理程序233,從所選擇的記錄中選擇抽出的始點(diǎn)端口和SA信息表234的始點(diǎn)端口2343一致的記錄。然后,從所選擇的記錄中選擇抽出的終點(diǎn)IP地址和SA信息表234的終點(diǎn)IP地址2344一致的記錄。而且,從所選擇的記錄中選擇抽出的終點(diǎn)端口和SA信息表234的終點(diǎn)端口2345一致的記錄。
然后,SA處理程序233,根據(jù)所選擇的記錄的密鑰數(shù)據(jù)2348,對發(fā)送包加密。而且,SA處理程序233的加密處理,和過去有關(guān)IPsec等的加密處理一樣。
然后,網(wǎng)絡(luò)處理程序231,向應(yīng)答器3發(fā)送SA處理程序233加密過的包(S113)。
這樣,NAT4從發(fā)起器2A接收包。然后,NAT4,對接收到的包的始點(diǎn)地址,分配該NAT4的地址(S114)。這里,NAT4,對包的始點(diǎn)地址172.16.0.12345分配該NAT4的地址192.0.2.41235。
然后,NAT4,把接收到的包的始點(diǎn)地址轉(zhuǎn)換為分配的地址。之后,NAT4,把轉(zhuǎn)換過地址的包發(fā)給應(yīng)答器3(S115)。
以后,在發(fā)起器2A和應(yīng)答器3之間的通信中,NAT4分配的地址作為發(fā)起器2A的地址使用。
應(yīng)答器3,從NAT4接收包。這樣,應(yīng)答器3,用網(wǎng)絡(luò)處理程序331處理接收包。
網(wǎng)絡(luò)處理程序331,當(dāng)判斷為接收包被加密,調(diào)用擴(kuò)展SA處理程序333。
這樣,擴(kuò)展SA處理程序333,進(jìn)行接收包處理。并且,擴(kuò)展SA處理程序333的接收包處理,在圖9中說明詳細(xì)情況。
之后,設(shè)應(yīng)答器3的網(wǎng)絡(luò)AP332,請求應(yīng)答器3的網(wǎng)絡(luò)處理程序331、由應(yīng)答器3的端口80向NAT4的端口1235發(fā)送包。
應(yīng)答器3的網(wǎng)絡(luò)處理程序331,從網(wǎng)絡(luò)AP332接收包發(fā)送請求。這樣,網(wǎng)絡(luò)處理程序331,為了向發(fā)送包提供安全功能,調(diào)用應(yīng)答器3的擴(kuò)展SA處理程序333。
這樣,擴(kuò)展SA處理程序333,通過進(jìn)行發(fā)送包處理,對發(fā)送包加密。而且,擴(kuò)展SA處理程序333的發(fā)送包處理,在圖10中詳細(xì)說明。
然后,應(yīng)答器3的網(wǎng)絡(luò)處理程序331,把擴(kuò)展SA處理程序333加密過的包發(fā)給NAT4(S117)。
NAT4,從應(yīng)答器3接收包。這樣,NAT4,向發(fā)起器2A傳輸所接收到的包(S118)。
發(fā)起器2A,從NAT4接收包。這樣,發(fā)起器2A,由網(wǎng)絡(luò)處理程序231處理接收包。網(wǎng)絡(luò)處理程序231,判斷為接收包已經(jīng)被加密,并調(diào)用SA處理程序233。
這樣,SA處理程序233,參照SA信息表234,對接收包解密。而且,SA處理程序233的解密處理,和過去有關(guān)IPsec等的處理一樣。
圖9是第1實(shí)施例擴(kuò)展SA處理程序333的接收包處理流程圖。
擴(kuò)展SA處理程序333,根據(jù)接收包的信息,從SA信息表334選擇對應(yīng)該接收包的SA信息(S201)。
當(dāng)接收包不包含SPI時(shí),擴(kuò)展SA處理程序333,根據(jù)接收包的地址信息,從SA信息表334選擇記錄。
具體地說,擴(kuò)展SA處理程序333,從接收包抽出該接收包的始點(diǎn)IP地址、始點(diǎn)端口、終點(diǎn)IP地址及終點(diǎn)端口。然后,從SA信息表334選擇抽出的始點(diǎn)IP地址和SA信息表334的始點(diǎn)IP地址3342一致的記錄。
然后,擴(kuò)展SA處理程序333,從所選擇的記錄中選擇抽出的始點(diǎn)端口和SA信息表334的始點(diǎn)端口3343一致的記錄。然后,從所選擇的記錄中選擇抽出的終點(diǎn)IP地址和SA信息表334的終點(diǎn)IP地址3344一致的記錄。還有,從所選擇的記錄中選擇抽出的終點(diǎn)端口和SA信息表334的終點(diǎn)端口3345一致的記錄。之后,把所選擇的記錄作為對應(yīng)接收包的SA信息。
另外,當(dāng)接收包包含SPI時(shí),擴(kuò)展SA處理程序333,根據(jù)接收包的SPI,從SA信息表334中選擇記錄。
具體地說,擴(kuò)展SA處理程序333,從SA信息表334中選擇包含在接收包的SPI和SA信息表334的SPI3347一致的記錄。之后,把所選擇的記錄作為對應(yīng)接收包的SA信息。
然后,擴(kuò)展SA處理程序333,判斷能否從SA信息表334中選擇對應(yīng)接收包的SA信息(S202)。
擴(kuò)展SA處理程序333,當(dāng)不能選擇對應(yīng)接收包的SA信息時(shí),原樣進(jìn)入步驟S205。
另外,擴(kuò)展SA處理程序333,當(dāng)可以選擇對應(yīng)接收包的SA信息時(shí),從對應(yīng)所選擇的SA信息的記錄中,抽出密鑰數(shù)據(jù)3348。之后,使用抽出的密鑰數(shù)據(jù)3348,對接收包進(jìn)行解密處理(S203)。
然后,擴(kuò)展SA處理程序333,判斷接收包的解密是否成功(S204)。具體地說,擴(kuò)展SA處理程序333,使用包含在接收包的安全頭上的校驗(yàn)和(checksum)或者帶有密鑰的散列函數(shù)值(帶有密鑰的散列函數(shù)值keyed hash value)等,判斷接收包的解密是否成功。
擴(kuò)展SA處理程序333,當(dāng)接收包解密成功時(shí),把解密過的接收包發(fā)給網(wǎng)絡(luò)處理程序331。然后,結(jié)束本處理。
另外,擴(kuò)展SA處理程序333,當(dāng)接收包解密失敗時(shí),進(jìn)入步驟S205。
在過去的IPsec等中,應(yīng)答器3,當(dāng)在步驟S202中判斷為不能選擇SA信息時(shí)或者在步驟S204中判斷為接收包解密失敗時(shí),則廢棄包。
但是,擴(kuò)展SA處理程序333,根據(jù)接收包的信息,從SA候補(bǔ)信息表335選擇對應(yīng)該接收包的SA候補(bǔ)信息(S205)。
當(dāng)接收包不包含SPI時(shí),擴(kuò)展SA處理程序333,根據(jù)接收包的地址信息,從SA候補(bǔ)信息表335中選擇記錄。
具體地說,擴(kuò)展SA處理程序333,從接收包抽出該接收包的始點(diǎn)IP地址、始點(diǎn)端口、終點(diǎn)IP地址及終點(diǎn)端口。然后,從SA候補(bǔ)信息表335中選擇抽出的始點(diǎn)IP地址和SA候補(bǔ)信息表335中的始點(diǎn)IP地址3352一致的記錄。
然后,擴(kuò)展SA處理程序333,從所選擇的記錄中選擇抽出的始點(diǎn)端口和SA候補(bǔ)信息表335的始點(diǎn)端口3353一致的記錄。然后,從所選擇的記錄中選擇抽出的終點(diǎn)IP地址和SA候補(bǔ)信息表335的終點(diǎn)IP地址3354一致的記錄。還有,從所選擇的記錄中選擇抽出的終點(diǎn)端口和SA候補(bǔ)信息表335的終點(diǎn)端口3355一致的記錄。之后,把所選擇的記錄作為對應(yīng)接收包的SA候補(bǔ)信息。
這時(shí),擴(kuò)展SA處理程序333,把存儲(chǔ)著“不確定”的始點(diǎn)IP地址3352、始點(diǎn)端口3353、終點(diǎn)IP地址3354或者終點(diǎn)端口3355作為“任意一種(any)(滿足所有條件)”來處理。
另外,當(dāng)接收包包含SPI時(shí),擴(kuò)展SA處理程序333,根據(jù)接收包的SPI,從SA候補(bǔ)信息表335選擇記錄。
具體地說,擴(kuò)展SA處理程序333,從SA候補(bǔ)信息表335中選擇包含在接收包的SPI和SA候補(bǔ)信息表335的SPI3357一致的記錄。之后,把所選擇的記錄,作為對應(yīng)接收包的SA候補(bǔ)信息。
然后,擴(kuò)展SA處理程序333,判斷是否可以從SA候補(bǔ)信息表335中選擇對應(yīng)接收包的SA候補(bǔ)信息(S206)。
擴(kuò)展SA處理程序333,當(dāng)不能選擇對應(yīng)接收包的SA候補(bǔ)信息時(shí),不能對接收包解密。因此,擴(kuò)展SA處理程序333,廢棄包(S210)。之后,結(jié)束本處理。
另外,擴(kuò)展SA處理程序333,當(dāng)可以選擇對應(yīng)接收包的SA候補(bǔ)信息時(shí),從對應(yīng)所選擇的SA候補(bǔ)信息的記錄中抽出密鑰數(shù)據(jù)3358。然后,使用抽出的密鑰數(shù)據(jù)3358,對接收包進(jìn)行解密處理(S207)。
然后,擴(kuò)展SA處理程序333,判斷接收包的解密是否成功(S208)。
擴(kuò)展SA處理程序333,當(dāng)接收包解密失敗時(shí),不能對接收包解密。因此,擴(kuò)展SA處理程序333,廢棄包(S210)。然后結(jié)束本處理。
另外,擴(kuò)展SA處理程序333,當(dāng)接收包解密成功時(shí),從SA候補(bǔ)信息表335中選擇對應(yīng)解密成功的SA候補(bǔ)信息的記錄。之后,根據(jù)接收包的始點(diǎn)地址192.0.2.41235及從SA候補(bǔ)信息表335中選擇的記錄,生成SA信息(S212)。具體地說,在新的SA信息的始點(diǎn)IP地址,存儲(chǔ)接收包的始點(diǎn)IP地址192.0.2.4。然后,在新的SA信息的始點(diǎn)端口,存儲(chǔ)接收包的始點(diǎn)端口1235。
然后,擴(kuò)展SA處理程序333,從SA候補(bǔ)信息表335中選擇的記錄中抽出對ID3350。然后,從SA候補(bǔ)信息表335中選擇抽出的對ID3350和SA候補(bǔ)信息表335的對ID3350一致的記錄(S213)。
然后,擴(kuò)展SA處理程序333,判斷是否可以從SA候補(bǔ)信息表335中選擇對ID3350一致的記錄(S214)。
擴(kuò)展SA處理程序333,當(dāng)不能選擇對ID3350一致的記錄時(shí),判斷為不存在同時(shí)生成的SA信息,原樣進(jìn)入步驟S216。
另外,擴(kuò)展SA處理程序333,當(dāng)可以選擇對ID3350一致的記錄時(shí),根據(jù)所選擇的記錄及接收包的始點(diǎn)地址192.0.2.41235,生成SA信息(S215)。具體地說,在新的SA信息的終點(diǎn)IP地址,存儲(chǔ)接收包的始點(diǎn)IP地址192.0.2.4。然后,在新的SA信息的終點(diǎn)端口,存儲(chǔ)接收包的始點(diǎn)端口1235。
由此,擴(kuò)展SA處理程序333,生成對應(yīng)步驟S212中生成的接收用(inbound)SA信息的發(fā)送用(outbound)SA信息。
然后,擴(kuò)展SA處理程序333,把步驟S212及步驟S215中生成的SA信息存儲(chǔ)在SA信息表335中(S216)。
由此,擴(kuò)展SA處理程序333,把接收用及發(fā)送用SA信息存儲(chǔ)在SA信息表335中。例如,擴(kuò)展SA處理程序333,根據(jù)圖6所示的SA候補(bǔ)信息表335,生成圖5所示的SA信息表334。而且,擴(kuò)展SA處理程序333,當(dāng)在步驟S214中不能選擇對ID3350一致的記錄時(shí),不生成發(fā)送用SA信息。
然后,擴(kuò)展SA處理程序333,從SA候補(bǔ)信息表335中刪除步驟S205及步驟S213中選擇過的記錄(S217)。
然后,擴(kuò)展SA處理程序333,把解密過的接收包發(fā)給網(wǎng)絡(luò)處理程序331。然后,結(jié)束本處理。
圖10是第1實(shí)施例的擴(kuò)展SA處理程序333的發(fā)送包處理流程圖。
擴(kuò)展SA處理程序333,根據(jù)發(fā)送包的地址信息,從SA信息表334中選擇對應(yīng)該發(fā)送包的SA信息(S601)。
具體地說,擴(kuò)展SA處理程序333,從發(fā)送包抽出該發(fā)送包的始點(diǎn)IP地址、始點(diǎn)端口、終點(diǎn)IP地址及終點(diǎn)端口。然后,從SA信息表334中選擇抽出的始點(diǎn)IP地址和SA信息表334的始點(diǎn)IP地址3342一致的記錄。
然后,擴(kuò)展SA處理程序333,從所選擇的記錄中選擇抽出的始點(diǎn)端口和SA信息表334的始點(diǎn)端口3343一致的記錄。然后,從所選擇的記錄中選擇抽出的終點(diǎn)IP地址和SA信息表334的終點(diǎn)IP地址3344一致的記錄。還有,從所選擇的記錄中選擇抽出的終點(diǎn)端口和SA信息表334的終點(diǎn)端口3345一致的記錄。之后,把所選擇的記錄作為對應(yīng)發(fā)送包的SA信息。
然后,擴(kuò)展SA處理程序333,判斷是否可以從SA信息表334中選擇對應(yīng)發(fā)送包的SA信息(S602)。
擴(kuò)展SA處理程序333,當(dāng)不能選擇對應(yīng)發(fā)送包的SA信息時(shí),不能對發(fā)送包進(jìn)行加密。因此,擴(kuò)展SA處理程序333,廢棄發(fā)送包(S605)。然后,結(jié)束本處理。
另外,擴(kuò)展SA處理程序333,當(dāng)可以選擇對應(yīng)發(fā)送包的SA信息時(shí),可以對發(fā)送包進(jìn)行加密。
這里,擴(kuò)展SA處理程序333,在步驟S601中選擇多個(gè)SA信息時(shí),從所選擇的多個(gè)SA信息中選擇一個(gè)(S603)。例如,擴(kuò)展SA處理程序333,從所選擇的多個(gè)SA信息中,選擇適用安全策略的條件最為苛刻的SA信息。
然后,擴(kuò)展SA處理程序333,從對應(yīng)所選擇的SA信息的記錄中,抽出密鑰數(shù)據(jù)3348。之后,使用抽出的密鑰數(shù)據(jù)3348,對發(fā)送包進(jìn)行加密處理(S604)。
然后,擴(kuò)展SA處理程序333,把加密過的發(fā)送包發(fā)給網(wǎng)絡(luò)處理程序331。之后,結(jié)束本處理。
如上所述,擴(kuò)展SA處理程序333的發(fā)送包處理,和過去有關(guān)IPsec等的處理一樣,不使用SA候補(bǔ)信息。
本實(shí)施例中,應(yīng)答器3,暫時(shí)存儲(chǔ)地址信息不明確的SA信息即SA候補(bǔ)信息。然后,應(yīng)答器3,根據(jù)SA候補(bǔ)信息,生成SA信息。由此,本實(shí)施例的發(fā)起器2及應(yīng)答器3,不必事先預(yù)約NAT4的地址,就可以對存在NAT4的通信建立SA。為此,發(fā)起器2的網(wǎng)絡(luò)AP232及NAT4,不需進(jìn)行特別處理。
第2實(shí)施例第2實(shí)施例中,應(yīng)答器3,把SA信息及SA候補(bǔ)信息,匯總成一個(gè)表統(tǒng)一管理。
第2實(shí)施例的計(jì)算機(jī)系統(tǒng)的組成,除了應(yīng)答器3的組成,和第1實(shí)施例的計(jì)算機(jī)系統(tǒng)(圖1)一樣。又,第2實(shí)施例的計(jì)算機(jī)系統(tǒng)的處理,除了應(yīng)答器3的接收包處理,和第1實(shí)施例(圖7)一樣。因此,對于一樣的組成及一樣的處理,省略說明。
圖11是第2實(shí)施例的應(yīng)答器3的方框圖。
第2實(shí)施例的應(yīng)答器3,代替SA信息表334及SA候補(bǔ)信息表335,把SA信息與SA候補(bǔ)信息表337存儲(chǔ)在存儲(chǔ)器33中。第2實(shí)施例的應(yīng)答器3的其它組成,和第1實(shí)施例的應(yīng)答器(圖3)一樣。對同樣的組成標(biāo)以相同的標(biāo)號,省略說明。
SA信息與SA候補(bǔ)信息表337,在圖12中后述,SA信息及SA候補(bǔ)信息合在一起進(jìn)行存儲(chǔ)。
圖12是第2實(shí)施例應(yīng)答器3的SA信息與SA候補(bǔ)信息表337的組成圖。
SA信息與SA候補(bǔ)信息表337,包含對ID3370、狀態(tài)3371、方向3372、始點(diǎn)IP地址3373、始點(diǎn)端口3374、終點(diǎn)地址3375、終點(diǎn)端口3376、協(xié)議3377、SPI3378、密鑰數(shù)據(jù)3379及SA的有效時(shí)間3380及SA的候補(bǔ)有效時(shí)間3381。
在SA信息與SA候補(bǔ)信息表337的一個(gè)記錄上存儲(chǔ)著SA信息或者SA候補(bǔ)信息中的任意一個(gè)。
對ID3370,是該SA信息或者該SA候補(bǔ)信息所屬對的唯一標(biāo)識符。
狀態(tài)3371,表示在該記錄上存儲(chǔ)SA信息或者SA候補(bǔ)信息中的哪一個(gè)。也就是說,當(dāng)該記錄是SA信息時(shí),狀態(tài)3371上存儲(chǔ)(完成“完成mature、意思為‘成熟’,但在IPsec中以‘完成的SA’意思處理”。又,當(dāng)該記錄是SA候補(bǔ)信息時(shí),存儲(chǔ)于狀態(tài)3371上“候補(bǔ)(候補(bǔ)candidate)”。
方向3372,表示根據(jù)該SA信息的SA或者該SA候補(bǔ)信息生成的SA信息的SA適用在包接收時(shí)或者包發(fā)送時(shí)的哪方。
始點(diǎn)IP地址3373,是適用根據(jù)該SA信息的SA或者該SA候補(bǔ)信息生成的SA信息的SA的包源IP地址。始點(diǎn)端口3374是適用根據(jù)該SA信息的SA或者該SA候補(bǔ)信息生成的SA信息的SA的包發(fā)送地端口號。
終點(diǎn)IP地址3375是適用根據(jù)該SA信息的SA或者該SA候補(bǔ)信息生成的SA信息的SA的包發(fā)送目的地的IP地址。終點(diǎn)端口3376是適用根據(jù)該SA信息的SA或者該SA候補(bǔ)信息生成的SA信息的SA的包發(fā)送目的地的端口號。
協(xié)議3377,是適用根據(jù)該SA信息的SA或者該SA候補(bǔ)信息生成的SA信息的SA的包的協(xié)議。SPI3378是根據(jù)該SA信息的SA或者該SA候補(bǔ)信息生成的SA信息的唯一標(biāo)識符。
密鑰數(shù)據(jù)3379是對適用根據(jù)該SA信息的SA或者該SA候補(bǔ)信息生成的SA信息的SA的包,用于進(jìn)行加密或解密的信息。
SA的有效時(shí)間3380,是把根據(jù)該SA信息的SA或者該SA候補(bǔ)信息生成的SA信息的SA適用在包的時(shí)間。
SA的候補(bǔ)有效時(shí)間3381,是應(yīng)答器3根據(jù)該SA候補(bǔ)信息可以生成SA信息的時(shí)間。因此,該記錄是SA信息時(shí),SA候補(bǔ)有效時(shí)間3381上,不存儲(chǔ)值。
圖13是第2實(shí)施例擴(kuò)展SA處理程序333的接收包處理流程圖。
擴(kuò)展SA處理程序333,根據(jù)接收包的信息,從SA信息與SA候補(bǔ)信息表337中選擇對應(yīng)該接收包的SA信息與SA候補(bǔ)信息(S301)。
當(dāng)接收包不包含SPI時(shí),擴(kuò)展SA處理程序333,根據(jù)接收包的地址信息,從SA信息與SA候補(bǔ)信息表337中選擇記錄。
具體地說,擴(kuò)展SA處理程序333,從接收包抽出該接收包的始點(diǎn)IP地址、始點(diǎn)端口、終點(diǎn)IP地址及終點(diǎn)端口。然后,從SA信息與SA候補(bǔ)信息表337中選擇抽出的始點(diǎn)IP地址和SA信息與SA候補(bǔ)信息表337的始點(diǎn)IP地址3373一致的記錄。
然后,擴(kuò)展SA處理程序333,從所選擇的記錄中選擇抽出的始點(diǎn)端口和SA信息與SA候補(bǔ)信息表337的始點(diǎn)端口3374一致的記錄。然后,從所選擇的記錄中選擇抽出的終點(diǎn)IP地址和SA信息與SA候補(bǔ)信息表337的終點(diǎn)IP地址3375一致的記錄。還有,從所選擇的記錄中選擇抽出的終點(diǎn)端口和SA信息與SA候補(bǔ)信息表337的終點(diǎn)端口3376一致的記錄。之后,把所選擇的記錄作為對應(yīng)接收包的SA信息或者SA候補(bǔ)信息。
另外,當(dāng)接收包包含SPI時(shí),擴(kuò)展SA處理程序333,根據(jù)接收包的SPI,從SA信息與SA候補(bǔ)信息表337中選擇記錄。
具體地說,擴(kuò)展SA處理程序333,從SA信息與SA候補(bǔ)信息表337中選擇包含在接收包的SPI和SA信息與SA候補(bǔ)信息表337的SPI3378一致的記錄。然后,把所選擇的記錄作為對應(yīng)接收包的SA信息或者SA候補(bǔ)信息。
然后,擴(kuò)展SA處理程序333,判斷是否可以從SA信息與SA候補(bǔ)信息表337中選擇對應(yīng)接收包的SA信息及SA候補(bǔ)信息中的至少一方(S302)。
擴(kuò)展SA處理程序333,當(dāng)對應(yīng)接收包的SA信息及SA候補(bǔ)信息均不能選擇時(shí),不能對接收包解密。因此,擴(kuò)展SA處理程序333,廢棄包(S210)。然后,結(jié)束本處理。
另外,擴(kuò)展SA處理程序333,當(dāng)至少可以選擇對應(yīng)接收包的SA信息及SA候補(bǔ)信息中的一方時(shí),從對應(yīng)所選擇的SA信息或者SA候補(bǔ)信息的記錄中,抽出密鑰數(shù)據(jù)3348。之后,使用抽出的密鑰數(shù)據(jù)3348,對接收包進(jìn)行解密處理(S303)。
然后,擴(kuò)展SA處理程序333,使用所選擇的SA信息,判斷接收包的解密是否成功(S304)。
擴(kuò)展SA處理程序333,當(dāng)依據(jù)SA信息的接收包解密成功時(shí),則把解密過的接收包發(fā)給網(wǎng)絡(luò)處理程序331。然后,結(jié)束本處理。
另外,擴(kuò)展SA處理程序333,當(dāng)依據(jù)SA信息的接收包解密失敗時(shí),使用所選擇的SA候補(bǔ)信息,判斷接收包的解密是否成功(S305)。
擴(kuò)展SA處理程序333,當(dāng)依據(jù)SA候補(bǔ)信息的接收包解密失敗,不能對接收包解密。因此,擴(kuò)展SA處理程序333,廢棄包(S210)。然后,結(jié)束本處理。
另外,擴(kuò)展SA處理程序333,當(dāng)依據(jù)SA候補(bǔ)信息的接收包解密成功時(shí),執(zhí)行步驟S212到步驟S217。而且,步驟S212到步驟S217,和第1實(shí)施例的有關(guān)擴(kuò)展SA處理程序333的接收包處理(圖9)中的步驟一樣。通過對同樣的步驟標(biāo)以相同的標(biāo)號,由此簡略說明。
如上所述,第2實(shí)施例的應(yīng)答器3,通過具備SA信息與SA候補(bǔ)信息表337,可以同時(shí)檢索SA信息及SA候補(bǔ)信息。
第3實(shí)施例第3實(shí)施例中,發(fā)起器2和應(yīng)答器3直接交換SA信息。
圖14是第3實(shí)施例計(jì)算機(jī)系統(tǒng)的方框圖。
第3實(shí)施例的計(jì)算機(jī)系統(tǒng),不具備SIP代理服務(wù)器6。第3實(shí)施例的計(jì)算機(jī)系統(tǒng)的其它組成,和第1實(shí)施例的計(jì)算機(jī)系統(tǒng)(圖1)一樣。由于對相同組成標(biāo)以相同的標(biāo)號,由此省略說明。
而且,發(fā)起器2及應(yīng)答器3,使用IKE等密鑰交換協(xié)議,建立SA。
圖15是第3實(shí)施例的計(jì)算機(jī)系統(tǒng)的SA建立處理時(shí)序圖。
發(fā)起器2及應(yīng)答器3,進(jìn)行第1階段(phase)的通信(s1101)。具體地說,發(fā)起器2及應(yīng)答器3,通過收發(fā)包來交換相互的ID。之后,發(fā)起器2及應(yīng)答器3,決定第2階段(phase)的通信方式。
而且,NAT4,從發(fā)起器2A接收最初的包時(shí),對該包的始點(diǎn)地址,分配該NAT4的地址(S1102)。
然后,發(fā)起器2及應(yīng)答器3,進(jìn)行第2階段(phase)的通信(S1103)。具體地說,發(fā)起器2及應(yīng)答器3,通過用第1階段(phase)決定的方式收發(fā)包來交換SA信息。由此,發(fā)起器2A及應(yīng)答器3,建立SA。
然后,第3實(shí)施例的計(jì)算機(jī)系統(tǒng),執(zhí)行步驟S111到步驟S118。
而且,步驟S111到步驟S118,和第1實(shí)施例的計(jì)算機(jī)系統(tǒng)的SA建立處理(圖7)步驟一樣。對于相同的步驟標(biāo)以相同的標(biāo)號,以此省略說明。
依據(jù)第3實(shí)施例,不具備SIP代理服務(wù)器6的計(jì)算機(jī)系統(tǒng),即使在為建立SA的通信和利用已經(jīng)建立的SA的通信中使用不同地址,也可以建立SA。
第4實(shí)施例第4實(shí)施例中,負(fù)荷分散裝置對應(yīng)答器分散包。
圖16是第4實(shí)施例計(jì)算機(jī)系統(tǒng)的方框圖。
計(jì)算機(jī)系統(tǒng),具備通信網(wǎng)1、發(fā)起器2、應(yīng)答器3、SIP代理服務(wù)器6、負(fù)荷分散裝置7及通信線路9。
發(fā)起器2、SIP代理服務(wù)器6及負(fù)荷分散裝置7,通過通信線路9和通信網(wǎng)1連接。應(yīng)答器3,通過通信線路9和負(fù)荷分散裝置7連接。也就是說,應(yīng)答器3,通過負(fù)荷分散裝置7和通信網(wǎng)1連接。
而且,通信網(wǎng)1、發(fā)起器2、應(yīng)答器3及SIP代理服務(wù)器6,和第1實(shí)施例的計(jì)算機(jī)系統(tǒng)(圖1)的組成一樣。通過對相同的組成標(biāo)以相同的標(biāo)號,以此省略說明。
但是,第3實(shí)施例的應(yīng)答器3中,事先設(shè)定了負(fù)荷分散裝置7的存在、該負(fù)荷分散裝置7的地址信息及其它應(yīng)答器3的地址信息。
負(fù)荷分散裝置7,轉(zhuǎn)換從通信網(wǎng)1接收到的包的終點(diǎn)地址,把該包傳輸給任意應(yīng)答器3。
圖17是第4實(shí)施例的計(jì)算機(jī)系統(tǒng)的SA建立處理時(shí)序圖。
這個(gè)時(shí)序圖的計(jì)算機(jī)系統(tǒng),對在發(fā)起器2A中工作的Web瀏覽器和在應(yīng)答器3B中工作的Web服務(wù)器之間的通信進(jìn)行加密。于是,發(fā)起器2A和應(yīng)答器3A,交換SA信息。之后,應(yīng)答器3B,通過和應(yīng)答器3A交換SA候補(bǔ)信息,由此和發(fā)起器2A之間建立SA。
這里,發(fā)起器2A的IP地址是192.0.2.2。又,負(fù)荷分散裝置7在通信網(wǎng)1方的IP地址是192.0.2.7。又,應(yīng)答器3A的IP地址是172.16.0.1。又,應(yīng)答器3B的IP地址是172.16.0.2。又,SIP代理服務(wù)器6的IP地址是192.0.2.6。
首先,發(fā)起器2A,達(dá)到某些條件時(shí),就判斷為在該發(fā)起器2A和負(fù)荷分散裝置7之間有必要建立SA。
這里,發(fā)起器2A的網(wǎng)絡(luò)處理程序231,從發(fā)起器2A的網(wǎng)絡(luò)AP232接收包發(fā)送請求。這樣,該網(wǎng)絡(luò)處理程序231,對發(fā)起器2A的SA處理程序233請求建立SA。之后,該SA處理程序233接收SA建立請求時(shí),發(fā)起器2A,就判斷為在該發(fā)起器2A的端口2345和負(fù)荷分散裝置7的端口80之間有必要建立SA。
這樣,發(fā)起器2A的SA處理程序233,從該發(fā)起器2A的端口5060中,把包含INVITE(邀請)消息的包,發(fā)給SIP代理服務(wù)器6(S701),其中這個(gè)INVITE消息存有建議用SA信息。而且,發(fā)起器2A的端口5060,是SIP的缺省端口。而且,存儲(chǔ)在INVITE消息中的SA信息,和第1實(shí)施例的SA信息(圖8)一樣,所以省略說明。
SIP代理服務(wù)器6,從發(fā)起器2A接收包含INVITE消息的包。這樣,SIP代理服務(wù)器6,向負(fù)荷分散裝置7傳輸所接收到的包(S702)。
負(fù)荷分散裝置7,從SIP代理服務(wù)器6接收包含INVITE消息的包。這樣,負(fù)荷分散裝置7,從連接的應(yīng)答器3中選擇接收到的包的傳輸目的地。這里,負(fù)荷分散裝置7,作為接收到的包的傳輸目的地,選擇了應(yīng)答器3A(S703)。
然后,負(fù)荷分散裝置7,把接收到的包的終點(diǎn)地址轉(zhuǎn)換為傳輸目的地的應(yīng)答器3A的地址172.16.0.15060。然后,負(fù)荷分散裝置7,把地址轉(zhuǎn)換過的包發(fā)送給傳輸目的地應(yīng)答器3A(S704)。
應(yīng)答器3A,從SIP代理服務(wù)器6接收包含INVITE消息的包。這樣,應(yīng)答器3A用網(wǎng)絡(luò)處理程序331處理接收到的包。
網(wǎng)絡(luò)處理程序331,判斷接收到的包包含SA信息,并調(diào)用控制SA處理程序333。
擴(kuò)展SA處理程序333,檢查包含在接收到的包中的建議用SA信息。然后,擴(kuò)展SA處理程序333根據(jù)檢查過的建議用SA信息,生成應(yīng)答用的SA信息。而且,應(yīng)答用的SA信息,是擴(kuò)展SA處理程序333準(zhǔn)許使用的SA信息。這時(shí),擴(kuò)展SA處理程序333,在生成的應(yīng)答用SA信息上,代替應(yīng)答器3A的地址信息,使其包含負(fù)荷分散裝置7的地址信息。
然后,擴(kuò)展SA處理程序333,把生成好的應(yīng)答用SA信息存儲(chǔ)在成功應(yīng)答消息中。然后,擴(kuò)展SA處理程序333,生成包含成功應(yīng)答消息的包。
然后,應(yīng)答器3A的網(wǎng)絡(luò)處理程序331,把擴(kuò)展SA處理程序333生成好的包發(fā)給負(fù)荷分散裝置7(S705)。
負(fù)荷分散裝置7從應(yīng)答器3A的網(wǎng)絡(luò)處理程序331接收包含成功應(yīng)答消息的包。這樣,負(fù)荷分散裝置7把接收到的包的始點(diǎn)地址轉(zhuǎn)換為該負(fù)荷分散裝置7的地址。之后,負(fù)荷分散裝置7把轉(zhuǎn)換過地址的包發(fā)給SIP代理服務(wù)器6(S706)。
SIP代理服務(wù)器6從網(wǎng)絡(luò)處理程序331接收包含成功應(yīng)答消息的包。然后,SIP代理服務(wù)器6把接收到的包傳輸給發(fā)起器2A(S707)。
發(fā)起器2A,從SIP代理服務(wù)器6接收包含成功應(yīng)答消息的包。如上所述,發(fā)起器2A及應(yīng)答器3A,交換SA消息。然后,發(fā)起器2A,把包含ACK消息的包發(fā)給SIP代理服務(wù)器6(S708)。
然后,發(fā)起器2A,根據(jù)步驟S707中接收到的包,更新SA信息表234(S711)。而且,發(fā)起器2A的SA信息表234的更新處理,和第1實(shí)施例計(jì)算機(jī)系統(tǒng)的SA建立處理(圖7)步驟S111一樣,所以省略詳細(xì)說明。
另外,SIP代理服務(wù)器6,從發(fā)起器2A接收包含ACK消息的包。這樣,SIP代理服務(wù)器6,把接收到的包,經(jīng)由負(fù)荷分散裝置7,傳輸給應(yīng)答器3A(S709、S710)。
應(yīng)答器3A,接收包含ACK消息的包。這樣,應(yīng)答器3A,由于事先設(shè)定了負(fù)荷分散裝置7的存在,所以更新SA候補(bǔ)信息表335(圖6)。
然后,應(yīng)答器3A,根據(jù)步驟S705中發(fā)送的包,更新SA候補(bǔ)信息表335。
具體地說,應(yīng)答器3A,從步驟S705中發(fā)送的包,抽出SA信息。應(yīng)答器3A,對SA候補(bǔ)信息表335僅僅是追加抽出的SA信息所指定的SA數(shù)量的新記錄。
然后,應(yīng)答器3A,在新的記錄的對ID3350上存儲(chǔ)新追加的所有記錄的相同值。這里,應(yīng)答器3A,選擇和其它記錄的對ID3350不重復(fù)的值,存儲(chǔ)在新的記錄的對ID3350中。然后,應(yīng)答器3A,在有關(guān)接收包時(shí)適用的SA的記錄方向3351中存儲(chǔ)“入站(inbound)”。另外,應(yīng)答器3A,在有關(guān)發(fā)送包時(shí)適用的SA的記錄方向3351中存儲(chǔ)“出站(outbound)”。
然后,應(yīng)答器3A,從抽出的SA信息的發(fā)起地址信息902中抽出IP地址、端口號及協(xié)議。然后,應(yīng)答器3A,在方向3351中存儲(chǔ)入站(inbound)的情況下,把抽出的IP地址存儲(chǔ)在新的記錄的始點(diǎn)IP地址3352中。另外,應(yīng)答器3A,在方向3351中存儲(chǔ)出站(outbound)的情況下,把抽出的IP地址存儲(chǔ)在新的記錄的終點(diǎn)IP地址3354中。
然后,應(yīng)答器3A,在方向3351中存儲(chǔ)入站(inbound)的情況下,把抽出的端口號存儲(chǔ)在新的記錄的始點(diǎn)端口3353中。另外,應(yīng)答器3A,在方向3351中存儲(chǔ)出站(outbound)的情況下,把抽出的端口號存儲(chǔ)在終點(diǎn)端口3355中。然后,把抽出的協(xié)議,存儲(chǔ)在新的記錄協(xié)議3356中。
然后,應(yīng)答器3A,在方向335I中存儲(chǔ)入站(inbound)的情況下,在新的記錄的終點(diǎn)IP地址3354及終點(diǎn)端口3355上存儲(chǔ)不確定(不確定pending)。另外,應(yīng)答器3A,在方向3351中存儲(chǔ)了出站(outbound)的情況下,對新的記錄的始點(diǎn)IP地址3352及始點(diǎn)端口3353上存儲(chǔ)不確定(不確定pending)。
然后,應(yīng)答器3A,從抽出的SA信息的策略信息901中,抽出SPI及有效時(shí)間。然后,把抽出的SPI存儲(chǔ)在新記錄的SPI3357中。然后,把抽出的有效時(shí)間,存儲(chǔ)在新記錄的SA的有效時(shí)間3359中。
然后,應(yīng)答器3A,根據(jù)抽出的SA信息的密鑰生成信息904,生成密鑰數(shù)據(jù)。然后,應(yīng)答器3A,把生成的密鑰數(shù)據(jù)存儲(chǔ)在新記錄的密鑰數(shù)據(jù)3358中。
然后,應(yīng)答器3A,把事先設(shè)定的值,存儲(chǔ)在新記錄的SA候補(bǔ)有效時(shí)間3360中。
如上所述,應(yīng)答器3A,更新SA候補(bǔ)信息表335(S712)。
之后,設(shè)發(fā)起器2A的網(wǎng)絡(luò)AP232,向發(fā)起器2A的網(wǎng)絡(luò)處理程序231請求了由發(fā)起器2A的端口2345向負(fù)荷分散裝置7的端口80的發(fā)送包。這時(shí),網(wǎng)絡(luò)AP232請求發(fā)送的包,也可以是到了SA建立契機(jī)的包被緩沖放置的包。
發(fā)起器2A的網(wǎng)絡(luò)處理程序231,從網(wǎng)絡(luò)AP232接收包發(fā)送請求。這樣,網(wǎng)絡(luò)處理程序231,為了對發(fā)送包提供安全功能,調(diào)用發(fā)起器2A的SA處理程序233。
SA處理程序233,從發(fā)送包抽出該發(fā)送包的始點(diǎn)IP地址、始點(diǎn)端口、終點(diǎn)IP地址及終點(diǎn)端口。然后,從SA信息表234選擇抽出的始點(diǎn)IP地址和SA信息表234的始點(diǎn)IP地址2342一致的記錄。
然后,SA處理程序233,從所選擇的記錄中選擇抽出的始點(diǎn)端口和SA信息表234的始點(diǎn)端口2343一致的記錄。然后,從所選擇的記錄中選擇抽出的終點(diǎn)IP地址和SA信息表234的終點(diǎn)IP地址2344一致的記錄。又,從所選擇的記錄中選擇抽出的終點(diǎn)端口和SA信息表234的終點(diǎn)端口2345一致的記錄。
然后,SA處理程序233,根據(jù)所選擇的記錄的密鑰數(shù)據(jù)2348,對發(fā)送包加密。而且,SA處理程序233的加密處理,和對于過去有關(guān)IPsec等的加密處理一樣。
然后,發(fā)起器2A的網(wǎng)絡(luò)處理程序231,把SA處理程序233加密過的包發(fā)給負(fù)荷分散裝置7(S713)。
負(fù)荷分散裝置7,從發(fā)起器2A接收包。這樣,負(fù)荷分散裝置7,從處在連接中的應(yīng)答器3中選擇接收到的包的傳輸目的地。這里,負(fù)荷分散裝置7,作為接收到的包的傳輸目的地,選擇了應(yīng)答器3B(S714)。
然后,負(fù)荷分散裝置7,把接收到的包的終點(diǎn)地址轉(zhuǎn)換為傳輸目的地應(yīng)答器3B的地址172.16.0.280。之后,負(fù)荷分散裝置7,把地址轉(zhuǎn)換過的包發(fā)給傳輸目的地的應(yīng)答器3B(S715)。
應(yīng)答器3B,從負(fù)荷分散裝置7接收包。這樣,應(yīng)答器3B,用網(wǎng)絡(luò)處理程序331處理接收包。
網(wǎng)絡(luò)處理程序331,判斷為接收包處于加密狀態(tài),并調(diào)用擴(kuò)展SA處理程序333。
這樣,擴(kuò)展SA處理程序333,進(jìn)行接收包處理。而且,擴(kuò)展SA處理程序333的接收包處理,在圖18A及圖18B中說明詳細(xì)情況。
這里,應(yīng)答器3B,根據(jù)該應(yīng)答器3B的SA信息表334及SA候補(bǔ)信息表335,不能對接收包解密。于是,應(yīng)答器3B,對其它所有的應(yīng)答器3發(fā)送SA候補(bǔ)信息檢索請求(S716)。而且,SA候補(bǔ)信息檢索請求中,包含檢索條件。
應(yīng)答器3A,從該應(yīng)答器3A的SA候補(bǔ)信息表335中抽出滿足接收到的SA候補(bǔ)信息檢索請求所包含的檢索條件的SA候補(bǔ)信息。然后,應(yīng)答器3A,生成包含抽出的SA候補(bǔ)信息的SA候補(bǔ)信息檢索應(yīng)答。之后,應(yīng)答器3A,把生成好的SA候補(bǔ)信息檢索應(yīng)答發(fā)給應(yīng)答器3B(S717)。
應(yīng)答器3B,接收SA候補(bǔ)信息檢索應(yīng)答。然后,應(yīng)答器3B,使用接收到的SA候補(bǔ)信息檢索應(yīng)答中所包含的SA候補(bǔ)信息,對接收包解密。然后,應(yīng)答器3B,根據(jù)解密成功的SA候補(bǔ)信息,生成SA信息(S718)。
然后,應(yīng)答器3B把生成好的SA信息存儲(chǔ)在該應(yīng)答器3B的SA信息表334中。然后,應(yīng)答器3B把解密成功的SA候補(bǔ)信息的刪除請求發(fā)給應(yīng)答器3A(S719)。
這樣,應(yīng)答器3A從該應(yīng)答器3A的SA候補(bǔ)信息表335中刪除被請求刪除的SA候補(bǔ)信息。
之后,設(shè)應(yīng)答器3B的網(wǎng)絡(luò)AP332,請求應(yīng)答器3的網(wǎng)絡(luò)處理程序331發(fā)送包。
應(yīng)答器3的網(wǎng)絡(luò)處理程序331,從網(wǎng)絡(luò)AP332接收包發(fā)送請求。這樣,網(wǎng)絡(luò)處理程序331,為了對發(fā)送包提供安全功能,調(diào)用應(yīng)答器3B的擴(kuò)展SA處理程序333。
這樣,擴(kuò)展SA處理程序333,通過進(jìn)行發(fā)送包處理,對發(fā)送包加密。而且,擴(kuò)展SA處理程序333的發(fā)送包處理和第1實(shí)施例(圖10)一樣,所以省略說明。
然后,應(yīng)答器3B的網(wǎng)絡(luò)處理程序331,向發(fā)起器2A發(fā)送擴(kuò)展SA處理程序333加密過的包(S720)。
這樣,負(fù)荷分散裝置7,從應(yīng)答器3B接收包。這樣,負(fù)荷分散裝置7,把接收到的包的始點(diǎn)地址轉(zhuǎn)換為該負(fù)荷分散裝置7的地址。然后,負(fù)荷分散裝置7,把地址轉(zhuǎn)換過的包,發(fā)給發(fā)起器2A(S721)。
發(fā)起器2A,從負(fù)荷分散裝置7接收包。這樣,發(fā)起器2A,用網(wǎng)絡(luò)處理程序231處理接收包。網(wǎng)絡(luò)處理程序231,判斷為接收包處于加密狀態(tài),并調(diào)用SA處理程序233。
這樣,SA處理程序233,參照SA信息表234,對接收包解密。而且,SA處理程序233的解密處理,和過去有關(guān)IPsec等的處理一樣。
圖18A及圖18B是第4實(shí)施例擴(kuò)展SA處理程序333的接收包處理流程圖。
首先,擴(kuò)展SA處理程序333,執(zhí)行步驟S201到步驟S208。而且,從步驟S201到步驟S208,和第1實(shí)施例的擴(kuò)展SA處理程序333的接收包處理(圖9)中的步驟一樣。通過對一樣的步驟標(biāo)以相同的標(biāo)號,省略說明。
擴(kuò)展SA處理程序333,當(dāng)在步驟S208中判斷接收包解密成功時(shí),執(zhí)行步驟S212到步驟S217。而且,步驟212到步驟S217,和第1實(shí)施例的擴(kuò)展SA處理程序333的接收包處理(圖9)中的步驟一樣。通過對一樣的步驟標(biāo)以相同的標(biāo)號,省略說明。
另外,擴(kuò)展SA處理程序333,當(dāng)在步驟S208中判斷為接收包解密失敗時(shí),判斷能否從其它裝置取得SA候補(bǔ)信息。具體地說,擴(kuò)展SA處理程序333,判斷具備該擴(kuò)展SA處理程序333的應(yīng)答器3是否處和其它應(yīng)答器3連接(連攜)(S209)。
擴(kuò)展SA處理程序333,當(dāng)判斷為沒有和其它應(yīng)答器3連接時(shí),不能對接收包解密。因此,擴(kuò)展SA處理程序333,廢棄包(S210)。然后,結(jié)束本處理。
另外,擴(kuò)展SA處理程序333,當(dāng)判斷為和其它應(yīng)答器3連接時(shí),利用該其它應(yīng)答器3的SA候補(bǔ)信息,試著對接收包解密。
具體地說,擴(kuò)展SA處理程序333,對具備該擴(kuò)展SA處理程序的應(yīng)答器3以外的所有應(yīng)答器3,發(fā)送SA候補(bǔ)信息檢索請求。而且,SA候補(bǔ)信息檢索請求,作為檢索條件至少包含接收包的SPI及地址信息中的一方。
其它應(yīng)答器3,當(dāng)分別接收SA候補(bǔ)信息檢索請求時(shí),從該SA候補(bǔ)信息檢索請求中抽出接收包的SPI或者地址信息。然后,該其它應(yīng)答器3,根據(jù)抽出的SPI或者地址信息,從本身的SA候補(bǔ)信息表335中選擇對應(yīng)接收包的SA候補(bǔ)信息。而且,應(yīng)答器3的SA候補(bǔ)信息選擇處理,和步驟S205一樣。因此,省略詳細(xì)說明。還有,該其它應(yīng)答器3,從本身的SA候補(bǔ)信息表335中選擇持有和選擇的SA候補(bǔ)信息一樣的對ID的SA候補(bǔ)信息。
然后,該其它應(yīng)答器3,把包含所選擇的SA候補(bǔ)信息的SA候補(bǔ)信息檢索應(yīng)答發(fā)給SA候補(bǔ)信息檢索請求發(fā)送地的應(yīng)答器3的擴(kuò)展SA處理程序333。
SA候補(bǔ)信息檢索請求發(fā)送地的應(yīng)答器3的擴(kuò)展SA處理程序333,接收SA候補(bǔ)信息檢索應(yīng)答。由此,擴(kuò)展SA處理程序333,從具備該擴(kuò)展SA處理程序333的應(yīng)答器3以外的應(yīng)答器3的SA候補(bǔ)信息表335中取得對應(yīng)接收包的SA候補(bǔ)信息(S401)。
然后,擴(kuò)展SA處理程序333,判斷是否取得了對應(yīng)接收包的SA候補(bǔ)信息(S402)。
擴(kuò)展SA處理程序333,當(dāng)不能取得對應(yīng)接收包的SA候補(bǔ)信息時(shí),不能對接收包進(jìn)行解密。因此,擴(kuò)展SA處理程序333,廢棄包(S405)。然后,結(jié)束本處理。
另外,擴(kuò)展SA處理程序333,當(dāng)可以取得對應(yīng)接收包的SA候補(bǔ)信息時(shí),從所取得的SA候補(bǔ)信息中抽出密鑰數(shù)據(jù)。然后使用抽出的密鑰數(shù)據(jù),進(jìn)行接收包的解密處理(S403)。
然后,擴(kuò)展SA處理程序333,判斷接收包的解密是否成功(S404)。
擴(kuò)展SA處理程序333,當(dāng)接收包解密失敗時(shí),不能對接收包解密。因此,擴(kuò)展SA處理程序333,廢棄包(S405)。然后結(jié)束本處理。
另外,擴(kuò)展SA處理程序333,當(dāng)接收包解密成功時(shí),根據(jù)解密成功的SA候補(bǔ)信息及接收包的終點(diǎn)地址,生成SA信息(S406)。
然后,擴(kuò)展SA處理程序333,從成功解密接收包的SA候補(bǔ)信息中抽出對ID。之后,從步驟S401中取得的SA候補(bǔ)信息中選擇持有和抽出的對ID相同對ID的SA候補(bǔ)信息(S407)。
然后,擴(kuò)展SA處理程序333,判斷是否選擇了持有相同對ID的SA候補(bǔ)信息(S408)。
擴(kuò)展SA處理程序333,當(dāng)不能選擇持有相同對ID的SA候補(bǔ)信息時(shí),原樣進(jìn)入步驟S410。
另外,擴(kuò)展SA處理程序333,當(dāng)可以選擇持有相同對ID的SA候補(bǔ)信息時(shí),根據(jù)所選擇的SA候補(bǔ)信息及接收包的終點(diǎn)地址,生成SA信息(S409)。
由此,擴(kuò)展SA處理程序333,生成對應(yīng)步驟S406中生成的接收用(inbound)SA信息的發(fā)送用(outbound)SA信息。
然后,擴(kuò)展SA處理程序333,把生成好的SA信息存儲(chǔ)在SA信息表335中(S410)。
然后,擴(kuò)展SA處理程序333,把SA信息的生成上使用過的SA候補(bǔ)信息刪除請求發(fā)給具備該擴(kuò)展SA處理程序333的應(yīng)答器3以外的應(yīng)答器3(S411)。SA候補(bǔ)信息的刪除請求上,作為刪除條件包含接收包的SPI及地址信息中的至少一方。
然后,擴(kuò)展SA處理程序333,把解密過的接收包發(fā)給網(wǎng)絡(luò)處理程序331。之后,結(jié)束本處理。
另外,其它應(yīng)答器3,當(dāng)分別接收SA候補(bǔ)信息的刪除請求時(shí),從本身的SA候補(bǔ)信息表335中刪除滿足包含該刪除請求的刪除條件的SA候補(bǔ)信息。
負(fù)荷分散裝置7,不能把用于建立SA的通信和利用已經(jīng)建立的SA的通信對應(yīng)起來。因此,負(fù)荷分散裝置7,就有可能把要建立SA的通信和利用已經(jīng)建立的SA的通信分派給不同的應(yīng)答器3。即使是這樣的情況,第4實(shí)施例的發(fā)起器2及應(yīng)答器3,也可以建立SA。
第5實(shí)施例第5實(shí)施例中,數(shù)據(jù)庫管理所有的SA候補(bǔ)信息。
圖19是第5實(shí)施例計(jì)算機(jī)系統(tǒng)的方框圖。
第5計(jì)算機(jī)系統(tǒng),具備SA候補(bǔ)信息數(shù)據(jù)庫(SA候補(bǔ)信息DB)。第5實(shí)施例的計(jì)算機(jī)系統(tǒng)的其它組成,和第4實(shí)施例的計(jì)算機(jī)系統(tǒng)(圖16)一樣。通過對相同組成標(biāo)以相同標(biāo)號,省略其說明。
而且,第5實(shí)施例的應(yīng)答器3,SA候補(bǔ)信息表335既可以存儲(chǔ)在存儲(chǔ)器33中,也可以不存儲(chǔ)在存儲(chǔ)器33中。又,該應(yīng)答器3,事先設(shè)定了負(fù)荷分散裝置7的存在、該負(fù)荷分散裝置7的地址信息及SA候補(bǔ)信息DB5的地址信息。
SA候補(bǔ)信息DB5,是用硬盤等存儲(chǔ)系統(tǒng)實(shí)現(xiàn)的數(shù)據(jù)庫裝置,存儲(chǔ)著SA候補(bǔ)信息表335。SA候補(bǔ)信息DB5對應(yīng)從應(yīng)答器3的請求,更新所存儲(chǔ)的SA候補(bǔ)信息表335。
圖20是第5實(shí)施例計(jì)算機(jī)系統(tǒng)的SA建立處理時(shí)序圖。
這個(gè)時(shí)序圖的計(jì)算機(jī)系統(tǒng),對在發(fā)起器2A中工作的Web瀏覽器和在應(yīng)答器3B中工作的Web服務(wù)器之間的通信進(jìn)行加密。于是,發(fā)起器2A和應(yīng)答器3A交換SA信息。然后,應(yīng)答器3A,根據(jù)交換過的SA信息,生成SA候補(bǔ)信息。然后,應(yīng)答器3A,把生成好的SA候補(bǔ)信息登錄在SA候補(bǔ)信息DB5中。之后,應(yīng)答器3B,通過從SA候補(bǔ)信息DB5中檢索SA候補(bǔ)信息,在和發(fā)起器2A之間建立SA。
這里,發(fā)起器2A的IP地址是192.0.2.2。又,負(fù)荷分散裝置7的通信網(wǎng)1方的IP地址是192.0.2.7。又,應(yīng)答器3A的IP地址是172.16.0.1。又,應(yīng)答器3B的IP地址是172.16.0.2。又,SIP代理服務(wù)器6的IP地址是192.0.2.6。
首先,計(jì)算機(jī)系統(tǒng),執(zhí)行步驟S701到步驟S711。而且,步驟S701到步驟S711,和有關(guān)第4實(shí)施例的計(jì)算機(jī)系統(tǒng)的SA建立處理(圖17)步驟一樣。通過對相同步驟標(biāo)以相同標(biāo)號,省略其說明。
應(yīng)答器3A,在步驟S710中,接收包含ACK消息的包。這樣,應(yīng)答器3A,由于事先設(shè)定了負(fù)荷分散裝置7的存在,因此生成SA候補(bǔ)信息(S812)。然后,應(yīng)答器3A,通過把SA候補(bǔ)信息登錄發(fā)送給SA候補(bǔ)信息DB5,由此,把生成好的SA候補(bǔ)信息存儲(chǔ)在SA候補(bǔ)信息DB5的SA候補(bǔ)信息表335中(S813)。
具體地說,應(yīng)答器3A,從步驟S705中發(fā)送的包,抽出SA信息。應(yīng)答器3A,在SA候補(bǔ)信息DB5的SA候補(bǔ)信息表335上僅僅是追加抽出的SA信息所指定的SA數(shù)量的新記錄。
然后,應(yīng)答器3A,在新記錄的對ID3350中存儲(chǔ)的對所有新追加的記錄的相同值。這里,應(yīng)答器3A,選擇和其它記錄的對ID3350不重復(fù)的值,存儲(chǔ)在新記錄的對ID3350中。
然后,應(yīng)答器3A,在有關(guān)接收包時(shí)適用的SA的記錄方向3351中存儲(chǔ)入站(inbound)。另外,應(yīng)答器3A,對有關(guān)發(fā)送包時(shí)適用的SA的記錄方向3351中存儲(chǔ)出站(outbound)。
然后,應(yīng)答器3A,從抽出的SA信息的發(fā)起地址信息902中抽出IP地址、端口號及協(xié)議。然后,應(yīng)答器3A,當(dāng)方向3351中存儲(chǔ)入站(inbound)時(shí),把抽出的IP地址存儲(chǔ)在新記錄的始點(diǎn)IP地址3352中。另外,應(yīng)答器3A,當(dāng)方向3351中存儲(chǔ)出站(outbound)時(shí),把抽出的IP地址存儲(chǔ)在新記錄的終點(diǎn)IP地址3354中。
然后,應(yīng)答器3A,當(dāng)方向3351中存儲(chǔ)入站(inbound)時(shí),把抽出的端口號存儲(chǔ)在新記錄的始點(diǎn)端口3353中。另外,應(yīng)答器3A,當(dāng)方向3351中存儲(chǔ)出站(outbound)時(shí),把抽出的端口號存儲(chǔ)在新記錄的終點(diǎn)端口3355中。然后,把抽出的協(xié)議,存儲(chǔ)在新記錄的協(xié)議3356中。
然后,應(yīng)答器3A,當(dāng)方向3351中存儲(chǔ)入站(inbound)時(shí),對新的記錄的終點(diǎn)IP地址3354及終點(diǎn)端口3355上存儲(chǔ)不確定。另外,應(yīng)答器3A,當(dāng)方向3351中存儲(chǔ)出站(outbound)時(shí),對新的記錄的始點(diǎn)IP地址3352及始點(diǎn)端口3355存儲(chǔ)不確定。
然后,應(yīng)答器3A,從抽出的SA信息的策略信息901中,抽出SPI及有效時(shí)間。然后,把抽出的SPI存儲(chǔ)在新記錄的SPI3357中。然后,把抽出的有效時(shí)間,存儲(chǔ)在新記錄的SA有效時(shí)間3359中。
然后,應(yīng)答器3A,根據(jù)抽出的SA信息的密鑰生成信息904,生成密鑰數(shù)據(jù)。然后,應(yīng)答器3A,把生成的密鑰數(shù)據(jù),存儲(chǔ)在新記錄的密鑰數(shù)據(jù)3358中。
然后,應(yīng)答器3A,把事先設(shè)定的值,存儲(chǔ)在新記錄的SA候補(bǔ)有效時(shí)間3360中。
如上所述,應(yīng)答器3A,更新SA候補(bǔ)信息DB5的SA候補(bǔ)信息表335。而且,應(yīng)答器3A,即使本身存儲(chǔ)SA候補(bǔ)信息表335的情況,也更新該SA候補(bǔ)信息表335。
之后,發(fā)起器2A的網(wǎng)絡(luò)AP232,請求發(fā)起器2A的網(wǎng)絡(luò)處理程序231,由發(fā)起器2A的端口2345向負(fù)荷分散裝置7的端口80發(fā)送包。
發(fā)起器2A的網(wǎng)絡(luò)處理程序231,從網(wǎng)絡(luò)AP232接收發(fā)送請求。這樣,網(wǎng)絡(luò)處理程序231,為了對發(fā)送包提供安全功能,調(diào)用發(fā)起器2A的SA處理程序233。
SA處理程序233,從發(fā)送包抽出該發(fā)送包的始點(diǎn)IP地址、始點(diǎn)端口、終點(diǎn)IP地址及終點(diǎn)端口。然后,從SA信息表234選擇抽出的始點(diǎn)IP地址和SA信息表234的始點(diǎn)IP地址2342一致的記錄。
然后,SA處理程序233,從所選擇的記錄中選擇抽出的始點(diǎn)端口和SA信息表234的始點(diǎn)端口2343一致的記錄。然后,從所選擇的記錄中選擇抽出的終點(diǎn)IP地址和SA信息表234的終點(diǎn)IP地址2344一致的記錄。并且,從所選擇的記錄中選擇抽出的終點(diǎn)端口和SA信息表234的終點(diǎn)端口2345一致的記錄。
然后,SA處理程序233,根據(jù)所選擇的記錄的密鑰數(shù)據(jù)2348,對發(fā)送包加密。而且,SA處理程序233的加密處理,和過去有關(guān)IPsec等的加密處理一樣。
然后,發(fā)起器2A的網(wǎng)絡(luò)處理程序231,把SA處理程序233加密過的包發(fā)給負(fù)荷分散裝置7(S814)。
負(fù)荷分散裝置7,從發(fā)起器2A接收包。這樣,負(fù)荷分散裝置7,從處于連接狀態(tài)的應(yīng)答器3中選擇接收到的包的傳輸目的地。這里,負(fù)荷分散裝置7,作為接收到的包的傳輸目的地,選擇了應(yīng)答器3B(S815)。
然后,負(fù)荷分散裝置7,把接收到的包的終點(diǎn)地址轉(zhuǎn)換為傳輸目的地應(yīng)答器3B的地址172.16.0.280。之后,負(fù)荷分散裝置7,把轉(zhuǎn)換過地址的包發(fā)給傳輸目的地的應(yīng)答器3B(S816)。
應(yīng)答器3B,從負(fù)荷分散裝置7接收包。這樣,應(yīng)答器3B,用網(wǎng)絡(luò)處理程序331處理接收包。
網(wǎng)絡(luò)處理程序331,當(dāng)判斷為接收包被加密過時(shí),調(diào)用擴(kuò)展SA處理程序333。
這樣,擴(kuò)展SA處理程序333,進(jìn)行接收包處理。而且,擴(kuò)展SA處理程序333的接收包處理,在圖21A及圖21B中詳細(xì)說明。
這里,應(yīng)答器3B,根據(jù)該應(yīng)答器3B的SA信息表334及SA候補(bǔ)信息表335,不能對接收包解密。于是,應(yīng)答器3B,將SA候補(bǔ)信息檢索請求發(fā)送給SA候補(bǔ)信息DB5(S817)。而且,SA候補(bǔ)信息檢索請求,包含檢索條件。
SA候補(bǔ)信息DB5,從該SA候補(bǔ)信息DB5的SA候補(bǔ)信息表335中抽出滿足接收到的SA候補(bǔ)信息檢索請求所包含的檢索條件的SA候補(bǔ)信息。然后,SA候補(bǔ)信息DB5,生成包含抽出的SA候補(bǔ)信息的SA候補(bǔ)信息檢索應(yīng)答。之后,SA候補(bǔ)信息DB5,把生成好的SA候補(bǔ)信息檢索應(yīng)答發(fā)給應(yīng)答器3B(S818)。
應(yīng)答器3B,從SA候補(bǔ)信息DB5接收SA候補(bǔ)信息檢索應(yīng)答。然后,應(yīng)答器3B,使用接收到的SA候補(bǔ)信息檢索應(yīng)答所包含的SA候補(bǔ)信息,對接收包解密。之后,應(yīng)答器3B,根據(jù)解密成功的SA候補(bǔ)信息,生成SA信息(S819)。
然后,應(yīng)答器3B,把生成好的SA信息存儲(chǔ)在該應(yīng)答器3B的SA信息表334中。然后,應(yīng)答器3B,把解密成功的SA候補(bǔ)信息的刪除請求發(fā)給SA候補(bǔ)信息DB5(S820)。
這樣,SA候補(bǔ)信息DB5,從該SA候補(bǔ)信息DB5的SA候補(bǔ)信息表335中刪除被請求刪除的SA候補(bǔ)信息。
之后,應(yīng)答器3B的網(wǎng)絡(luò)AP332,向應(yīng)答器3的網(wǎng)絡(luò)處理程序331請求發(fā)送包。
應(yīng)答器3的網(wǎng)絡(luò)處理程序331,從網(wǎng)絡(luò)AP332接收包發(fā)送請求。這樣,網(wǎng)絡(luò)處理程序331,為了對發(fā)送包提供安全功能,調(diào)用應(yīng)答器3B的擴(kuò)展SA處理程序333。
這樣,擴(kuò)展SA處理程序333,通過進(jìn)行發(fā)送包處理,對發(fā)送包加密。而且,擴(kuò)展SA處理程序333的發(fā)送包處理和第1實(shí)施例(圖10)一樣,所以省略說明。
然后,應(yīng)答器3B的網(wǎng)絡(luò)處理程序331,向發(fā)起器2A發(fā)送擴(kuò)展SA處理程序333加密過的包(S821)。
負(fù)荷分散裝置7,從應(yīng)答器3B接收包。這樣,負(fù)荷分散裝置7,把接收到的包的始點(diǎn)地址轉(zhuǎn)換為該負(fù)荷分散裝置7的地址。然后,負(fù)荷分散裝置7,把轉(zhuǎn)換過地址的包,發(fā)給發(fā)起器2A(S721)。
發(fā)起器2A,從負(fù)荷分散裝置7接收包。這樣,發(fā)起器2A,用網(wǎng)絡(luò)處理程序231處理接收包。網(wǎng)絡(luò)處理程序231,判斷為接收包處于加密狀態(tài),并調(diào)用SA處理程序233。
這樣,SA處理程序233,參照SA信息表234,對接收包解密。而且,SA處理程序233的解密處理,和過去有關(guān)IPsec等的處理一樣。
圖21A及圖21B是第5實(shí)施例擴(kuò)展SA處理程序333的接收包處理流程圖。
首先,擴(kuò)展SA處理程序333,執(zhí)行步驟S201到步驟S204。而且,步驟S201到步驟S204,和第1實(shí)施例的擴(kuò)展SA處理程序333的接收包處理(圖9)中的步驟一樣。通過對一樣的步驟標(biāo)以相同的標(biāo)號,省略說明。
其次,擴(kuò)展SA處理程序333,對SA候補(bǔ)信息DB5發(fā)送SA候補(bǔ)信息檢索請求。而且,SA候補(bǔ)信息檢索請求,作為檢索條件包含接收包的SPI及地址信息中的至少一方。
SA候補(bǔ)信息DB5,當(dāng)接收SA候補(bǔ)信息檢索請求時(shí),從該SA候補(bǔ)信息檢索請求抽出接收包的SPI或者地址信息。之后,SA候補(bǔ)信息DB5,根據(jù)抽出的SPI或者地址信息,從SA候補(bǔ)信息表335選擇對應(yīng)接收包的SA候補(bǔ)信息。而且,SA候補(bǔ)信息DB5的SA候補(bǔ)信息的選擇處理,和有關(guān)第1實(shí)施例的擴(kuò)展SA處理程序333的接收包處理(圖9)的步驟S205一樣。因此,省略詳細(xì)說明。
還有,SA候補(bǔ)信息DB5,從SA候補(bǔ)信息表335中選擇持有和所選擇的SA候補(bǔ)信息一樣的對ID的SA候補(bǔ)信息。
然后,SA候補(bǔ)信息DB5,把包含所選擇的SA候補(bǔ)信息的SA候補(bǔ)信息檢索應(yīng)答發(fā)給SA候補(bǔ)信息檢索請求的發(fā)送地應(yīng)答器3的擴(kuò)展SA處理程序333。
該應(yīng)答器3的擴(kuò)展SA處理程序333,接收SA候補(bǔ)信息檢索應(yīng)答。由此,擴(kuò)展SA處理程序333,從SA候補(bǔ)信息DB5的SA候補(bǔ)信息表335中取得對應(yīng)接收包的SA候補(bǔ)信息(S501)。
然后,擴(kuò)展SA處理程序333,判斷是否可以取得對應(yīng)接收包的SA候補(bǔ)信息(S502)。
擴(kuò)展SA處理程序333,當(dāng)判斷為不能取得對應(yīng)接收包的SA候補(bǔ)信息時(shí),不能對接收包進(jìn)行解密。因此,擴(kuò)展SA處理程序333廢棄包(S505)。然后,結(jié)束本處理。
另外,擴(kuò)展SA處理程序333,當(dāng)判斷為可以取得對應(yīng)接收包的SA候補(bǔ)信息時(shí),從取得的SA候補(bǔ)信息中抽出密鑰數(shù)據(jù)。然后使用抽出的密鑰數(shù)據(jù),對接收包進(jìn)行解密處理(S503)。
然后,擴(kuò)展SA處理程序333,判斷接收包的解密是否成功(S504)。
擴(kuò)展SA處理程序333,當(dāng)接收包解密失敗時(shí),不能對接收包解密。因此,擴(kuò)展SA處理程序333,廢棄包(S505)。然后結(jié)束本處理。
另外,擴(kuò)展SA處理程序333,當(dāng)接收包解密成功時(shí),根據(jù)解密成功的SA候補(bǔ)信息及接收包的終點(diǎn)地址,生成SA信息(S506)。
然后,擴(kuò)展SA處理程序333,從成功解密接收包的SA候補(bǔ)信息中抽出對ID。之后,從步驟S501中取得的SA候補(bǔ)信息中選擇持有和抽出的對ID相同的對ID的SA候補(bǔ)信息(S507)。
然后,擴(kuò)展SA處理程序333,判斷是否可以選擇持有相同對ID的SA候補(bǔ)信息(S508)。
擴(kuò)展SA處理程序333,當(dāng)不能選擇持有相同對ID的SA候補(bǔ)信息時(shí),原樣進(jìn)入步驟S510。
另外,擴(kuò)展SA處理程序333,當(dāng)可以選擇持有相同對ID的SA候補(bǔ)信息時(shí),根據(jù)所選擇的SA候補(bǔ)信息及接收包的終點(diǎn)地址,生成SA信息(S509)。
由此,擴(kuò)展SA處理程序333,生成對應(yīng)步驟S506中生成的接收用(inbound)的SA信息的發(fā)送用(outbound)SA信息。
然后,擴(kuò)展SA處理程序333,把生成好的SA信息存儲(chǔ)在SA信息表335中(S510)。
然后,擴(kuò)展SA處理程序333,把SA信息的生成上使用過的SA候補(bǔ)信息刪除請求,發(fā)給SA候補(bǔ)信息DB5(S511)。SA候補(bǔ)信息的刪除請求上,包含作為刪除條件的接收包的SPI及地址信息中的至少一方。
然后,擴(kuò)展SA處理程序333,把解密過的接收包發(fā)給網(wǎng)絡(luò)處理程序331。然后,結(jié)束本處理。
另外,SA候補(bǔ)信息DB5,當(dāng)接收SA候補(bǔ)信息刪除請求時(shí),從本身的SA候補(bǔ)信息表335中刪除滿足該刪除請求中包含的刪除條件的SA候補(bǔ)信息。
本實(shí)施例中,SA候補(bǔ)信息DB5管理SA候補(bǔ)信息。由此,減輕應(yīng)答器3的負(fù)擔(dān)。
權(quán)利要求
1.一種計(jì)算機(jī)系統(tǒng),包括具有第1處理器、第1存儲(chǔ)器及第1接口的第1計(jì)算機(jī);具有第2處理器、第2存儲(chǔ)器及第2接口的第2計(jì)算機(jī);以及控制所述第1計(jì)算機(jī)與所述第2計(jì)算機(jī)通信的通信控制裝置,其特征在于上述通信控制裝置,當(dāng)從上述第1計(jì)算機(jī)接收包時(shí),變換接收到的包的地址信息,并傳送給上述第2計(jì)算機(jī);上述第2存儲(chǔ)器,存儲(chǔ)SA候補(bǔ)信息,所述SA候補(bǔ)信息是地址信息的一部分不明確的SA信息;上述第2處理器,當(dāng)從上述第1計(jì)算機(jī)接收通過上述第1計(jì)算機(jī)被加密的包時(shí),使用上述SA候補(bǔ)信息對該加密包進(jìn)行解密;當(dāng)上述加密包解密成功時(shí),則根據(jù)上述解密中使用的上述SA候補(bǔ)信息及該加密包的地址信息,生成SA信息。
2.如權(quán)利要求1所述的計(jì)算機(jī)系統(tǒng),其特征在于,上述第2存儲(chǔ)器,把有關(guān)接收用SA的SA候補(bǔ)信息和有關(guān)發(fā)送用SA的SA候補(bǔ)信息相關(guān)聯(lián)地進(jìn)行存儲(chǔ);上述第2處理器,當(dāng)上述加密包解密成功時(shí),則根據(jù)上述解密中使用的SA候補(bǔ)信息及該加密包的地址信息,生成有關(guān)接收用SA的SA信息;并且,根據(jù)與解密中使用的上述SA候補(bǔ)信息相關(guān)聯(lián)著的上述SA候補(bǔ)信息及該加密包的地址信息,生成有關(guān)發(fā)送用SA的SA信息。
3.如權(quán)利要求1所述的計(jì)算機(jī)系統(tǒng),其特征在于,上述第2處理器當(dāng)從上述第1計(jì)算機(jī)接收請求建立SA的SA請求包時(shí),判斷上述接收到的SA請求包是否經(jīng)由了上述通信控制裝置;當(dāng)判斷為上述接收到的SA請求包沒有經(jīng)由上述通信控制裝置時(shí),則根據(jù)上述接收到的SA請求包,生成上述SA信息;當(dāng)判斷為上述接收到的SA請求包經(jīng)由了上述通信控制裝置時(shí),則根據(jù)上述接收到的SA請求包,生成上述SA候補(bǔ)信息。
4.如權(quán)利要求3所述的計(jì)算機(jī)系統(tǒng),其特征在于,還包括保證上述第1計(jì)算機(jī)與上述第2計(jì)算機(jī)的通信安全的代理計(jì)算機(jī),上述代理計(jì)算機(jī),當(dāng)從上述第1計(jì)算機(jī)接收SA請求包時(shí),就判斷上述接收到的SA請求包是否經(jīng)由了上述通信控制裝置,當(dāng)判斷為上述接收到的SA請求包經(jīng)由了上述通信控制裝置時(shí),就將此意通知給上述第2計(jì)算機(jī);上述第2處理器,根據(jù)來自上述代理計(jì)算機(jī)的通知,判斷上述接收到的SA請求包是否經(jīng)由了上述通信控制裝置。
5.如權(quán)利要求1所述的計(jì)算機(jī)系統(tǒng),其特征在于,在上述SA候補(bǔ)信息中,設(shè)置了有效期限;上述第2處理器,把超過上述有效期限的上述SA候補(bǔ)信息,從上述第2存儲(chǔ)器中刪除。
6.一種計(jì)算機(jī)系統(tǒng),包括具有第1處理器、第1存儲(chǔ)器及第1接口的第1計(jì)算機(jī);具有第2處理器、第2存儲(chǔ)器及第2接口的多臺(tái)第2計(jì)算機(jī);以及分散上述第2計(jì)算機(jī)的負(fù)荷的負(fù)荷分散裝置,其特征在于上述負(fù)荷分散裝置,把從上述第1計(jì)算機(jī)接收到的包傳送給上述第2計(jì)算機(jī)的任一個(gè);上述第2存儲(chǔ)器,存儲(chǔ)SA候補(bǔ)信息,所述SA候補(bǔ)信息為地址信息的一部分不明確的SA信息;上述第2處理器當(dāng)從上述第1計(jì)算機(jī)接收由上述第1計(jì)算機(jī)加密的包時(shí),使用上述SA候補(bǔ)信息對該加密包進(jìn)行解密;當(dāng)上述加密包解密成功時(shí),則根據(jù)上述解密中使用的上述SA候補(bǔ)信息及該加密包的地址信息,生成SA信息。
7.如權(quán)利要求6所述的計(jì)算機(jī)系統(tǒng),其特征在于,上述第2存儲(chǔ)器,把有關(guān)接收用SA的SA候補(bǔ)信息和有關(guān)發(fā)送用SA的SA候補(bǔ)信息相關(guān)聯(lián)地進(jìn)行存儲(chǔ);上述第2處理器當(dāng)上述加密包解密成功時(shí),根據(jù)上述解密中使用的上述SA候補(bǔ)信息及該加密包的地址信息,生成有關(guān)接收用SA的SA信息;并且,根據(jù)與解密中使用的上述SA候補(bǔ)信息相關(guān)聯(lián)著的上述SA候補(bǔ)信息及該加密包的地址信息,生成有關(guān)發(fā)送用SA的SA信息。
8.如權(quán)利要求6所述的計(jì)算機(jī)系統(tǒng),其特征在于,上述第2處理器,當(dāng)從上述第1計(jì)算機(jī)接收請求建立SA的SA請求信息包時(shí),則不生成上述SA信息,而生成上述SA候補(bǔ)信息。
9.如權(quán)利要求6所述的計(jì)算機(jī)系統(tǒng),其特征在于,上述SA候補(bǔ)信息中,設(shè)置了有效期限;上述第2處理器,把超過上述有效期限的上述SA候補(bǔ)信息,從上述第2存儲(chǔ)器中刪除。
10.如權(quán)利要求6所述的計(jì)算機(jī)系統(tǒng),其特征在于,上述第2處理器,使用其它的第2計(jì)算機(jī)的第2存儲(chǔ)器中所存儲(chǔ)的上述SA候補(bǔ)信息,對上述加密包進(jìn)行解密。
11.如權(quán)利要求6所述的計(jì)算機(jī)系統(tǒng),其特征在于,還具備管理上述SA候補(bǔ)信息的SA候補(bǔ)信息數(shù)據(jù)庫;上述第2處理器,使用上述SA候補(bǔ)信息數(shù)據(jù)庫所管理的上述SA候補(bǔ)信息,給上述加密包解密。
12.一種計(jì)算機(jī),具備處理器、存儲(chǔ)器及接口,其特征在于,上述接口通過網(wǎng)絡(luò)和其它計(jì)算機(jī)連接;上述存儲(chǔ)器,存儲(chǔ)SA候補(bǔ)信息,所述SA候補(bǔ)信息是地址信息的一部分不明確的SA信息;上述處理器當(dāng)從上述其它計(jì)算機(jī)接收由上述其它計(jì)算機(jī)加密的包時(shí),使用上述SA候補(bǔ)信息對上述加密包進(jìn)行解密;如果上述加密包解密成功,就根據(jù)上述解密中使用的上述SA候補(bǔ)信息及該加密包的地址信息,生成SA信息。
13.如權(quán)利要求12所述的計(jì)算機(jī),其特征在于,上述存儲(chǔ)器,把有關(guān)接收用SA的SA候補(bǔ)信息和有關(guān)發(fā)送用SA的SA候補(bǔ)信息相關(guān)聯(lián)地進(jìn)行存儲(chǔ);上述處理器當(dāng)上述加密包解密成功時(shí),根據(jù)上述解密中使用的上述SA候補(bǔ)信息及該加密包的地址信息,生成有關(guān)接收用SA的SA信息;并且,根據(jù)與解密中使用的上述SA候補(bǔ)信息相關(guān)聯(lián)著的上述SA候補(bǔ)信息及該加密包的地址信息,生成有關(guān)發(fā)送用SA的SA信息。
14.如權(quán)利要求12所述的計(jì)算機(jī),其特征在于,所述處理器,當(dāng)從上述其它計(jì)算機(jī)接收請求建立SA的SA請求包時(shí),判斷上述接收到的SA請求包的地址信息是否已被變換;當(dāng)判斷為上述接收到的SA請求包的地址信息已被變換,就根據(jù)上述接收到的SA請求包,生成上述SA信息;當(dāng)判斷為上述接收到的SA請求包的地址信息沒有被變換,就根據(jù)上述接收到的SA請求包,生成上述SA候補(bǔ)信息。
全文摘要
一種計(jì)算機(jī)系統(tǒng),在經(jīng)由NAT或者負(fù)荷分散裝置通信的計(jì)算機(jī)之間建立SA。具備第1計(jì)算機(jī)和具有第2處理器及第2存儲(chǔ)器的第2計(jì)算機(jī)以及控制上述第1計(jì)算機(jī)和上述第2計(jì)算機(jī)之間的通信的通信控制裝置的計(jì)算機(jī)系統(tǒng),其特征在于,上述通信控制裝置,當(dāng)從上述第1計(jì)算機(jī)接收包時(shí),轉(zhuǎn)換接收到的包的地址信息,傳輸給上述第2計(jì)算機(jī),上述第2存儲(chǔ)器,存儲(chǔ)地址信息的一部分不明確的SA信息即SA候補(bǔ)信息,上述第2處理器,當(dāng)從上述第1計(jì)算機(jī)接收由上述第1計(jì)算機(jī)加密過的加密包時(shí),使用上述SA候補(bǔ)信息對該加密包進(jìn)行解密,當(dāng)該加密包解密成功時(shí),根據(jù)上述解密中使用過的上述SA候補(bǔ)信息及該加密包的地址信息,生成SA信息。
文檔編號H04L9/06GK1968083SQ20061010854
公開日2007年5月23日 申請日期2006年7月21日 優(yōu)先權(quán)日2005年11月16日
發(fā)明者吉澤政洋, 湯本一磨, 星野和義 申請人:株式會(huì)社日立制作所