基于預(yù)取機(jī)制的dns資源記錄緩存和響應(yīng)方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明涉及一種基于預(yù)取機(jī)制的DNS資源記錄緩存和響應(yīng)方法及系統(tǒng)。該方法包括:1)設(shè)定資源記錄的TTL到期前的一小段時(shí)間為預(yù)取窗口時(shí)間;2)在所述預(yù)取窗口時(shí)間內(nèi),如果DNS遞歸服務(wù)器收到針對某資源記錄的查詢請求,則向相應(yīng)的權(quán)威服務(wù)器發(fā)送請求,將該資源記錄預(yù)取到本地并進(jìn)行緩存;3)DNS遞歸服務(wù)器利用預(yù)取的資源記錄對查詢請求進(jìn)行響應(yīng),將相應(yīng)的資源記錄發(fā)送至客戶端。該系統(tǒng)包括DNS遞歸服務(wù)器、預(yù)取功能配置模塊、預(yù)取窗口時(shí)長計(jì)算模塊和預(yù)取指令下發(fā)模塊。本發(fā)明能夠縮短DNS客戶端DNS資源記錄查詢時(shí)延,提升客戶端的用戶體驗(yàn)。
【專利說明】基于預(yù)取機(jī)制的DNS資源記錄緩存和響應(yīng)方法及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于域名解析【技術(shù)領(lǐng)域】,具體涉及一種采用資源記錄預(yù)取機(jī)制的DNS資源記錄緩存和響應(yīng)方法及系統(tǒng),能夠提高遞歸服務(wù)器響應(yīng)速度,縮短DNS客戶端DNS資源記錄的查詢時(shí)延。
【背景技術(shù)】
[0002]DNS是互聯(lián)網(wǎng)最為重要的基礎(chǔ)性資源,是其它互聯(lián)網(wǎng)業(yè)務(wù)安全運(yùn)行的保證。DNS系統(tǒng)主要由權(quán)威服務(wù)器、遞歸服務(wù)器以及客戶端構(gòu)成,權(quán)威服務(wù)器存儲(chǔ)了一個(gè)或多個(gè)區(qū)的信息,是DNS資源記錄的源頭。遞歸服務(wù)器負(fù)責(zé)接受客戶端(解析器)發(fā)送的請求,然后通過向各級(jí)權(quán)威服務(wù)器發(fā)出查詢請求獲得用戶需要的查詢結(jié)果,最后返回給客戶端的解析器。遞歸服務(wù)器可以將權(quán)威服務(wù)器返回的各種記錄進(jìn)行緩存從而減少查詢次數(shù)和提高查詢效率,因而也被稱為緩存服務(wù)器。客戶端一般通過遞歸服務(wù)器查詢各類資源記錄。
[0003]遞歸服務(wù)器所緩存的每條資源記錄都對應(yīng)一個(gè)TTL(Time To Live)值,如果TTL到期,那么遞歸服務(wù)器就會(huì)立刻將相應(yīng)的資源記錄刪除。下一次,如果其它客戶端來向該遞歸服務(wù)器請求該資源記錄,則遞歸服務(wù)器需重新向相應(yīng)的權(quán)威服務(wù)器下載該資源記錄。由于客戶端必須等待一段時(shí)間才能下載資源記錄,因而其等待時(shí)延較大,影響了用戶體驗(yàn)。
【發(fā)明內(nèi)容】
[0004]針對當(dāng)前遞歸服務(wù)器存在的響應(yīng)不及時(shí)的問題,本發(fā)明提供一種基于預(yù)取機(jī)制的DNS資源記錄緩存和響應(yīng)方法及系統(tǒng),能夠縮短遞歸服務(wù)器響應(yīng)時(shí)延,提升DNS系統(tǒng)服務(wù)體驗(yàn)。
[0005]為實(shí)現(xiàn)上述目的,本發(fā)明采用的技術(shù)方案如下:
[0006]—種基于預(yù)取機(jī)制的DNS資源記錄緩存和響應(yīng)方法,其步驟包括:
[0007]I)設(shè)定資源記錄的TTL到期前的一小段時(shí)間為預(yù)取窗口時(shí)間;
[0008]2)在所述預(yù)取窗口時(shí)間內(nèi),如果DNS遞歸服務(wù)器收到針對某資源記錄的查詢請求,則向相應(yīng)的權(quán)威服務(wù)器發(fā)送請求,將該資源記錄預(yù)取到本地并進(jìn)行緩存;
[0009]3)DNS遞歸服務(wù)器利用預(yù)取的資源記錄對查詢請求進(jìn)行響應(yīng),將相應(yīng)的資源記錄發(fā)送至客戶端。
[0010]進(jìn)一步地,資源記錄的預(yù)取目標(biāo)分為兩類:a)熱度大于某一閾值的資源記錄,其緩存命中率不小于某給定值山)某一域在一個(gè)TTL周期內(nèi)因預(yù)取機(jī)制而導(dǎo)致的額外DNS請求數(shù)小于某一給定值。
[0011]進(jìn)一步地,采用下述方法計(jì)算預(yù)取窗口時(shí)長:
[0012]對于a)類預(yù)取目標(biāo),依據(jù)下式計(jì)算預(yù)取窗口時(shí)長:
[0013]Th = -1og(1-Phit)A,
[0014]其中,Th為預(yù)取窗口時(shí)長;λ為資源記錄請求的平均到達(dá)率;Phit為資源記錄在Th內(nèi)被預(yù)取的概率,Phit也是后續(xù)對該資源記錄的請求被緩存命中的概率,稱為緩存命中率;[0015]對于b)類預(yù)取目標(biāo),依據(jù)下式計(jì)算預(yù)取窗口時(shí)長:
[0016]
【權(quán)利要求】
1.一種基于預(yù)取機(jī)制的DNS資源記錄緩存和響應(yīng)方法,其步驟包括: 1)設(shè)定資源記錄的TTL到期前的一小段時(shí)間為預(yù)取窗口時(shí)間; 2)在所述預(yù)取窗口時(shí)間內(nèi),如果DNS遞歸服務(wù)器收到針對某資源記錄的查詢請求,則向相應(yīng)的權(quán)威服務(wù)器發(fā)送請求,將該資源記錄預(yù)取到本地并進(jìn)行緩存; 3)DNS遞歸服務(wù)器利用預(yù)取的資源記錄對查詢請求進(jìn)行響應(yīng),將相應(yīng)的資源記錄發(fā)送至客戶端。
2.如權(quán)利要求1所述的方法,其特征在于:資源記錄的預(yù)取目標(biāo)分為兩類:a)熱度大于某一閾值的資源記錄,其緩存命中率不小于某給定值山)某一域在一個(gè)TTL周期內(nèi)因預(yù)取機(jī)制而導(dǎo)致的額外DNS請求數(shù)小于某一給定值。
3.如權(quán)利要求2所述的方法,其特征在于,采用下述方法計(jì)算預(yù)取窗口時(shí)長: 對于a)類預(yù)取目標(biāo),依據(jù)下式計(jì)算預(yù)取窗口時(shí)長:
4.如權(quán)利要求1所述的方法,其特征在于:根據(jù)資源記錄的剩余存活時(shí)間以及對應(yīng)的預(yù)取窗口時(shí)長,判斷是否向DNS遞歸服務(wù)器下發(fā)資源記錄預(yù)取指令;DNS遞歸服務(wù)器接收到預(yù)取指令后,立即預(yù)取相應(yīng)的資源記錄。
5.如權(quán)利要求4所述的方法,其特征在于:如果資源記錄的剩余存活時(shí)間小于預(yù)取窗口時(shí)間,且兩次預(yù)取指令的下達(dá)時(shí)間間隔大于預(yù)取窗口時(shí)間,則向DNS遞歸服務(wù)器下發(fā)資源記錄預(yù)取指令,否則無需下達(dá)資源記錄預(yù)取指令。
6.一種采用權(quán)利要求1所述方法的DNS資源記錄緩存和響應(yīng)系統(tǒng),其特征在于,包括DNS遞歸服務(wù)器、預(yù)取功能配置模塊、預(yù)取窗口時(shí)長計(jì)算模塊和預(yù)取指令下發(fā)模塊;所述預(yù)取功能配置模塊設(shè)定資源記錄的預(yù)取目標(biāo);所述預(yù)取窗口時(shí)長計(jì)算模塊根據(jù)設(shè)定的預(yù)取目標(biāo)計(jì)算預(yù)取窗口時(shí)長;所述預(yù)取指令下發(fā)模塊根據(jù)資源記錄的剩余存活時(shí)間以及對應(yīng)的預(yù)取窗口時(shí)長,判斷是否向DNS遞歸服務(wù)器下發(fā)資源記錄預(yù)取指令;所述DNS遞歸服務(wù)器接收到預(yù)取指令后,立即預(yù)取相應(yīng)的資源記錄。
7.如權(quán)利要求6所述的系統(tǒng),其特征在于:所述預(yù)取功能配置模塊設(shè)定的預(yù)取目標(biāo)分為兩類:a)熱度大于某一閾值的資源記錄,其緩存命中率不小于某給定值;b)某一域在一個(gè)TTL周期內(nèi)因預(yù)取機(jī)制而導(dǎo)致的額外DNS請求數(shù)小于某一給定值。
8.如權(quán)利要求7所述的系統(tǒng),其特征在于,所述預(yù)取窗口時(shí)長計(jì)算模塊采用下述方法計(jì)算預(yù)取窗口時(shí)長: 對于a)類預(yù)取目標(biāo),依據(jù)下式計(jì)算預(yù)取窗口時(shí)長:Th = -1og(1-Phit)A, 其中,Th為預(yù)取窗口時(shí)長;λ為資源記錄請求的平均到達(dá)率;Phit為資源記錄在Th內(nèi)被預(yù)取的概率,Phit也是后續(xù)對該資源記錄的請求被緩存命中的概率,稱為緩存命中率; 對于b)類預(yù)取目標(biāo),依據(jù)下式計(jì)算預(yù)取窗口時(shí)長:
9.如權(quán)利要求6所述的系統(tǒng),其特征在于:所述預(yù)取指令下發(fā)模塊根據(jù)資源記錄的剩余存活時(shí)間以及對應(yīng)的預(yù)取窗口時(shí)長,判斷是否向DNS遞歸服務(wù)器下發(fā)資源記錄預(yù)取指令。
10.如權(quán)利要求9所述的系統(tǒng),其特征在于:如果資源記錄的剩余存活時(shí)間小于預(yù)取窗口時(shí)間,且兩次預(yù)取指令的下達(dá)時(shí)間間隔大于預(yù)取窗口時(shí)間,則所述預(yù)取指令下發(fā)模塊向DNS遞歸服務(wù)器下發(fā)資源記錄預(yù)取指令,否則無需下達(dá)資源記錄預(yù)取指令。
【文檔編號(hào)】H04L29/12GK103929509SQ201410186376
【公開日】2014年7月16日 申請日期:2014年5月5日 優(yōu)先權(quán)日:2014年5月5日
【發(fā)明者】鄧光青, 孔寧, 沈爍 申請人:中國科學(xué)院計(jì)算機(jī)網(wǎng)絡(luò)信息中心