本技術(shù)涉及通信領(lǐng)域,尤其涉及一種ike請(qǐng)求消息的管理方法、設(shè)備及存儲(chǔ)介質(zhì)。
背景技術(shù):
1、因特網(wǎng)協(xié)議安全(ipsec)為ip通信提供透明安全服務(wù),保護(hù)tcp/ip通信免受篡改和竊聽(tīng),且防止網(wǎng)絡(luò)攻擊。ipsec提供訪問(wèn)控制、無(wú)連接完整性、數(shù)據(jù)真實(shí)性、反重放服務(wù)以及保密性。ipsec包括互聯(lián)網(wǎng)密鑰交換協(xié)議(internet?key?exchange,簡(jiǎn)稱ike)以及認(rèn)證和加密的算法的ip數(shù)據(jù)安全的一系列協(xié)議。使用封包傳輸?shù)膇psec的兩個(gè)末端可稱作ipsec對(duì)等體。這兩個(gè)對(duì)等體之間的連接可稱作ipsec隧道或ipsec連接。ipsec使用安全聯(lián)盟(security?association,簡(jiǎn)稱sa)來(lái)保護(hù)兩個(gè)對(duì)等體之間的封包。sa是包含安全協(xié)議、封裝模式、加密算法、共享密鑰以及密鑰生存期的要素的集合。sa可以通過(guò)人工方式或通過(guò)ike協(xié)商建立。如兩個(gè)網(wǎng)絡(luò)節(jié)點(diǎn)或設(shè)備的一對(duì)ipsec對(duì)等體執(zhí)行ike協(xié)商以協(xié)商安全協(xié)議、交換ipsec認(rèn)證和加密密鑰以及管理協(xié)商密鑰。ike的第二個(gè)版本ikev2定義了四種交換:ike_sa_init交換、ike_auth交換、create_child_sa交換和informational交換。
2、在本技術(shù)中,ike請(qǐng)求端和ike響應(yīng)端即為一對(duì)ipsec對(duì)等體,在相互認(rèn)證后,建立ike安全聯(lián)盟,并建立相應(yīng)的ipsec安全聯(lián)盟。ike請(qǐng)求端發(fā)出的請(qǐng)求消息在超時(shí)時(shí)間內(nèi)未收到ike響應(yīng)端相應(yīng)的響應(yīng)消息時(shí),請(qǐng)求消息可能由于網(wǎng)絡(luò)故障無(wú)法重傳進(jìn)而被丟失,導(dǎo)致ipsec虛擬專用網(wǎng)絡(luò)(virtual?private?network,簡(jiǎn)稱vpn)連接異常或接收方的接收消息序號(hào)message?id不連續(xù),因此需要對(duì)ike安全聯(lián)盟進(jìn)行管理。
3、在現(xiàn)有技術(shù)中,ike請(qǐng)求消息的重新發(fā)送通過(guò)ike消息的重傳功能實(shí)現(xiàn),但部分實(shí)現(xiàn)如vpp的ike插件只支持ike_sa_init交換的重傳,并不支持其他交換的重傳。
4、由于現(xiàn)有技術(shù)中,ike請(qǐng)求消息的管理方法不支持ike_auth交換、create_child_sa交換和informational交換,因此請(qǐng)求消息的丟失率高,ipsec?vpn連接異?;蚪邮辗降慕邮障⑿蛱?hào)message?id不連續(xù)的概率高,現(xiàn)有的ike請(qǐng)求消息的管理方法存在ike請(qǐng)求消息傳輸可靠性和vpn隧道穩(wěn)定性低的技術(shù)問(wèn)題。
技術(shù)實(shí)現(xiàn)思路
1、本技術(shù)提供一種ike請(qǐng)求消息的管理方法、設(shè)備及存儲(chǔ)介質(zhì),用以解決ike請(qǐng)求消息傳輸可靠性和vpn隧道穩(wěn)定性低的技術(shù)問(wèn)題。
2、一方面,本技術(shù)提供一種ike請(qǐng)求消息的管理方法,該方法包括:
3、基于ike安全聯(lián)盟建立消息隊(duì)列;其中,消息隊(duì)列用于基于時(shí)間順序保存待發(fā)送請(qǐng)求消息;
4、基于ike請(qǐng)求端確定待發(fā)送請(qǐng)求消息,判斷消息隊(duì)列是否為空;若否,則判斷待發(fā)送請(qǐng)求消息是否滿足預(yù)設(shè)條件;若是,則將待發(fā)送請(qǐng)求消息加入消息隊(duì)列;
5、逐一判斷消息隊(duì)列中的待發(fā)送請(qǐng)求消息是否具有ike響應(yīng)端發(fā)出的響應(yīng)消息;若否,則判斷待發(fā)送請(qǐng)求消息的等待發(fā)送時(shí)長(zhǎng)是否大于超時(shí)時(shí)長(zhǎng);若是,則判斷待發(fā)送請(qǐng)求消息的發(fā)送次數(shù)是否超過(guò)預(yù)設(shè)閾值;若是,則刪除ike安全聯(lián)盟和相應(yīng)的ipsec安全聯(lián)盟。
6、可選地,判斷待發(fā)送請(qǐng)求消息是否滿足預(yù)設(shè)條件,包括:
7、判斷待發(fā)送請(qǐng)求消息的消息類(lèi)型是否為失效對(duì)等檢測(cè)dpd消息;若是,則丟棄待發(fā)送請(qǐng)求消息;
8、若否,則判斷消息隊(duì)列中是否已有消息類(lèi)型的所待發(fā)送請(qǐng)求消息;若否,則確定待發(fā)送請(qǐng)求消息滿足預(yù)設(shè)條件。
9、可選地,在待發(fā)送請(qǐng)求消息的消息類(lèi)型為失效對(duì)等檢測(cè)dpd消息,和/或消息隊(duì)列中已有消息類(lèi)型的所待發(fā)送請(qǐng)求消息時(shí),丟棄待發(fā)送請(qǐng)求消息。
10、可選地,在ike安全聯(lián)盟的數(shù)量大于1時(shí),逐一判斷消息隊(duì)列中的待發(fā)送請(qǐng)求消息是否具有ike響應(yīng)端發(fā)出的響應(yīng)消息,包括:
11、基于ike安全聯(lián)盟建立管理線程,基于管理線程遍歷多個(gè)ike安全聯(lián)盟對(duì)應(yīng)的消息隊(duì)列;
12、基于消息隊(duì)列中待發(fā)送請(qǐng)求消息的時(shí)間順序,逐一判斷待發(fā)送請(qǐng)求消息是否具有ike響應(yīng)端發(fā)出的響應(yīng)消息。
13、可選地,在基于ike安全聯(lián)盟建立消息隊(duì)列之前,包括:
14、ike請(qǐng)求端和ike響應(yīng)端相互認(rèn)證,建立ike安全聯(lián)盟,并建立相應(yīng)的ipsec安全聯(lián)盟。
15、可選地,在待發(fā)送請(qǐng)求消息的發(fā)送次數(shù)未超過(guò)預(yù)設(shè)閾值時(shí),基于ike請(qǐng)求端向ike響應(yīng)端發(fā)送待發(fā)送請(qǐng)求消息。
16、可選地,在消息隊(duì)列為空時(shí),將待發(fā)送請(qǐng)求消息加入消息隊(duì)列。
17、第二方面,本技術(shù)提供一種ike請(qǐng)求消息的管理設(shè)備,包括:
18、建立模塊,用于基于ike安全聯(lián)盟建立消息隊(duì)列;其中,消息隊(duì)列用于基于時(shí)間順序保存待發(fā)送請(qǐng)求消息;
19、第一處理模塊,用于基于ike請(qǐng)求端確定待發(fā)送請(qǐng)求消息,判斷消息隊(duì)列是否為空;若否,則判斷待發(fā)送請(qǐng)求消息是否滿足預(yù)設(shè)條件;若是,則將待發(fā)送請(qǐng)求消息加入消息隊(duì)列;
20、第二處理模塊,用于逐一判斷消息隊(duì)列中的待發(fā)送請(qǐng)求消息是否具有ike響應(yīng)端發(fā)出的響應(yīng)消息;若否,則判斷待發(fā)送請(qǐng)求消息的等待發(fā)送時(shí)長(zhǎng)是否大于超時(shí)時(shí)長(zhǎng);若是,則判斷待發(fā)送請(qǐng)求消息的發(fā)送次數(shù)是否超過(guò)預(yù)設(shè)閾值;若是,則刪除ike安全聯(lián)盟和相應(yīng)的ipsec安全聯(lián)盟。
21、可選地,第一處理模塊還用于:
22、判斷待發(fā)送請(qǐng)求消息的消息類(lèi)型是否為失效對(duì)等檢測(cè)dpd消息;若是,則丟棄待發(fā)送請(qǐng)求消息;
23、若否,則判斷消息隊(duì)列中是否已有消息類(lèi)型的所待發(fā)送請(qǐng)求消息;若否,則確定待發(fā)送請(qǐng)求消息滿足預(yù)設(shè)條件。
24、可選地,該設(shè)備還用于:
25、在待發(fā)送請(qǐng)求消息的消息類(lèi)型為失效對(duì)等檢測(cè)dpd消息,和/或消息隊(duì)列中已有消息類(lèi)型的所待發(fā)送請(qǐng)求消息時(shí),丟棄待發(fā)送請(qǐng)求消息。
26、可選地,該設(shè)備還用于:
27、在ike安全聯(lián)盟的數(shù)量大于1時(shí),基于ike安全聯(lián)盟建立管理線程,基于管理線程遍歷多個(gè)ike安全聯(lián)盟對(duì)應(yīng)的消息隊(duì)列;
28、基于消息隊(duì)列中待發(fā)送請(qǐng)求消息的時(shí)間順序,逐一判斷待發(fā)送請(qǐng)求消息是否具有ike響應(yīng)端發(fā)出的響應(yīng)消息。
29、可選地,該設(shè)備還用于:
30、ike請(qǐng)求端和ike響應(yīng)端相互認(rèn)證,建立ike安全聯(lián)盟,并建立相應(yīng)的ipsec安全聯(lián)盟。
31、可選地,該設(shè)備還用于:
32、在待發(fā)送請(qǐng)求消息的發(fā)送次數(shù)未超過(guò)預(yù)設(shè)閾值時(shí),基于ike請(qǐng)求端向ike響應(yīng)端發(fā)送待發(fā)送請(qǐng)求消息。
33、可選地,該設(shè)備還用于:
34、在消息隊(duì)列為空時(shí),將待發(fā)送請(qǐng)求消息加入消息隊(duì)列。
35、本技術(shù)的第三方面,提供了一種ike請(qǐng)求消息的管理設(shè)備,包括:
36、處理器和存儲(chǔ)器;
37、存儲(chǔ)器存儲(chǔ)計(jì)算機(jī)執(zhí)行指令;
38、處理器執(zhí)行存儲(chǔ)器存儲(chǔ)的計(jì)算機(jī)執(zhí)行指令,使得ike請(qǐng)求消息的管理設(shè)備執(zhí)行第一方面中任一項(xiàng)的ike請(qǐng)求消息的管理方法。
39、第四方面,本技術(shù)提供了一種計(jì)算機(jī)可讀存儲(chǔ)介質(zhì),計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)中存儲(chǔ)有計(jì)算機(jī)執(zhí)行指令,計(jì)算機(jī)執(zhí)行指令被處理器執(zhí)行時(shí)用于實(shí)現(xiàn)如第一方面中任一項(xiàng)的ike請(qǐng)求消息的管理方法。
40、本技術(shù)提供的ike請(qǐng)求消息的管理方法、設(shè)備及存儲(chǔ)介質(zhì),通過(guò)基于ike安全聯(lián)盟建立消息隊(duì)列;其中,消息隊(duì)列用于基于時(shí)間順序保存待發(fā)送請(qǐng)求消息;基于ike請(qǐng)求端確定待發(fā)送請(qǐng)求消息,判斷消息隊(duì)列是否為空;若否,則判斷待發(fā)送請(qǐng)求消息是否滿足預(yù)設(shè)條件;若是,則將待發(fā)送請(qǐng)求消息加入消息隊(duì)列;逐一判斷消息隊(duì)列中的待發(fā)送請(qǐng)求消息是否具有ike響應(yīng)端發(fā)出的響應(yīng)消息;若否,則判斷待發(fā)送請(qǐng)求消息的等待發(fā)送時(shí)長(zhǎng)是否大于超時(shí)時(shí)長(zhǎng);若是,則判斷待發(fā)送請(qǐng)求消息的發(fā)送次數(shù)是否超過(guò)預(yù)設(shè)閾值;若是,則刪除ike安全聯(lián)盟和相應(yīng)的ipsec安全聯(lián)盟,從而實(shí)現(xiàn)了通過(guò)將符合條件的待發(fā)送的請(qǐng)求消息加入消息隊(duì)列,基于消息隊(duì)列對(duì)發(fā)送超時(shí)且發(fā)送次數(shù)未超過(guò)預(yù)設(shè)閾值的請(qǐng)求消息進(jìn)行重發(fā),消息隊(duì)列不僅支持ike_sa_init交換的重傳,也支持ike_auth交換、create_child_sa交換和informational交換的重傳,且消息隊(duì)列中的請(qǐng)求消息不受網(wǎng)絡(luò)障礙的影響,從而降低了ike請(qǐng)求消息的丟失概率,實(shí)現(xiàn)了提高ike請(qǐng)求消息傳輸可靠性和vpn隧道穩(wěn)定性技術(shù)效果。