一種dns解析方法、服務(wù)器及網(wǎng)絡(luò)系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及互聯(lián)網(wǎng)技術(shù)領(lǐng)域,尤其涉及一種DNS解析方法、服務(wù)器及網(wǎng)絡(luò)系統(tǒng)。
【背景技術(shù)】
[0002]互聯(lián)網(wǎng)內(nèi)容提供商ICP通常以分布式方式向用戶提供內(nèi)容資源,客戶請求的資源可能位于不同的運(yùn)營商網(wǎng)絡(luò),或者位于同一運(yùn)營商網(wǎng)絡(luò)的不同地域。當(dāng)用戶對訪問某個(gè)網(wǎng)站資源進(jìn)行域名解析請求時(shí),DNS服務(wù)器可能響應(yīng)多個(gè)資源的IP地址,用戶默認(rèn)使用第一個(gè)IP地址進(jìn)行訪問,但這不一定是離用戶最近的訪問資源。本地DNS服務(wù)器返回給用戶的第一個(gè)IP地址對應(yīng)資源可能跨越不同運(yùn)營商網(wǎng)絡(luò)、或跨越本地網(wǎng)絡(luò)。當(dāng)本地DNS服務(wù)器接收到用戶的域名解析請求時(shí),本地DNS服務(wù)器只是簡單地把遞歸查詢得到的域名解析結(jié)果轉(zhuǎn)發(fā)給用戶,如圖1所示,本地DNS服務(wù)器可能把IDC4(跨運(yùn)營商)網(wǎng)站IP地址排在首位發(fā)給用戶(IDC4、IDC2、IDC3、IDC1),用戶默認(rèn)使用第一個(gè)IP地址訪問最遠(yuǎn)的網(wǎng)站,影響用戶感知。由于本地DNS服務(wù)器只是簡單地把遞歸查詢得到的域名解析結(jié)果轉(zhuǎn)發(fā)給用戶,存在非最優(yōu)解析,導(dǎo)致跨網(wǎng)或跨省流量大、用戶體驗(yàn)不好。
【發(fā)明內(nèi)容】
[0003]有鑒于此,本發(fā)明要解決的一個(gè)技術(shù)問題是提供一種DNS解析方法,能夠優(yōu)化對目標(biāo)域名的解析結(jié)果。
[0004]一種DNS解析方法,包括:獲取目標(biāo)域名的多個(gè)資源服務(wù)器的IP地址;計(jì)算所述多個(gè)資源服務(wù)器的IP地址與用戶所在的網(wǎng)絡(luò)服務(wù)提供點(diǎn)的距離,并按照距離由近到遠(yuǎn)的順序?qū)λ龆鄠€(gè)資源服務(wù)器的IP地址排序;將所述多個(gè)資源服務(wù)器的IP地址的排序優(yōu)化結(jié)果發(fā)送給所述用戶。
[0005]根據(jù)本發(fā)明的一個(gè)實(shí)施例,進(jìn)一步的,接收到所述用戶發(fā)送的指定所述目標(biāo)域名的DNS解析請求;從所述DNS解析請求獲取用戶IP地址,所述用戶IP地址由所述用戶所屬的網(wǎng)絡(luò)服務(wù)提供點(diǎn)分配;將所述用戶IP地址與預(yù)先配置的各個(gè)網(wǎng)絡(luò)服務(wù)提供點(diǎn)的IP網(wǎng)段地址進(jìn)行匹配,確定所述用戶所屬的網(wǎng)絡(luò)服務(wù)提供點(diǎn)。
[0006]根據(jù)本發(fā)明的一個(gè)實(shí)施例,進(jìn)一步的,根據(jù)網(wǎng)絡(luò)拓?fù)鋽?shù)據(jù)庫計(jì)算所述多個(gè)資源服務(wù)器的IP地址到達(dá)所述用戶所屬的網(wǎng)絡(luò)服務(wù)提供點(diǎn)的跳數(shù);根據(jù)跳數(shù)最少原則,對所述多個(gè)資源服務(wù)器的IP地址的訪問順序進(jìn)行排序,將排序結(jié)果返回給所述用戶并存儲。
[0007]根據(jù)本發(fā)明的一個(gè)實(shí)施例,進(jìn)一步的,根據(jù)網(wǎng)絡(luò)拓?fù)鋽?shù)據(jù)庫計(jì)算所述多個(gè)資源服務(wù)器的IP地址到達(dá)所述用戶所屬的網(wǎng)絡(luò)服務(wù)提供點(diǎn)的跳數(shù);按照網(wǎng)內(nèi)優(yōu)先原則,將與所述用戶在同一運(yùn)營商網(wǎng)絡(luò)中的資源服務(wù)器的IP地址的訪問順序排在前列,并且,根據(jù)跳數(shù)最少原則,對同一運(yùn)營商網(wǎng)絡(luò)或不同運(yùn)營商網(wǎng)絡(luò)中的資源服務(wù)器的IP地址的訪問順序進(jìn)行排序,將排序結(jié)果返回給所述用戶并存儲。
[0008]根據(jù)本發(fā)明的一個(gè)實(shí)施例,進(jìn)一步的,根據(jù)網(wǎng)絡(luò)拓?fù)鋽?shù)據(jù)庫計(jì)算所述多個(gè)資源服務(wù)器的IP地址到達(dá)所述用戶所屬的網(wǎng)絡(luò)服務(wù)提供點(diǎn)的傳輸延遲;根據(jù)傳輸延遲最短原則,將所述多個(gè)資源服務(wù)器的IP地址的訪問順序進(jìn)行排序,將排序結(jié)果返回給所述用戶并存儲。
[0009]根據(jù)本發(fā)明的一個(gè)實(shí)施例,進(jìn)一步的,所述用戶接收到所述排序結(jié)果,根據(jù)所述排序結(jié)果中資源服務(wù)器的可用性依次訪問資源服務(wù)器。
[0010]根據(jù)本發(fā)明的一個(gè)實(shí)施例,進(jìn)一步的,當(dāng)接收到屬于所述網(wǎng)絡(luò)服務(wù)提供點(diǎn)的用戶發(fā)送的、對所述目標(biāo)域名的DNS解析請求時(shí),將存儲的所述排序結(jié)果返回給此用戶。
[0011]本發(fā)明要解決的一個(gè)技術(shù)問題是提供一種DNS服務(wù)器,能夠優(yōu)化對目標(biāo)域名的解析結(jié)果。
[0012]一種DNS服務(wù)器,包括:地址獲取單元,用于獲取目標(biāo)域名的多個(gè)資源服務(wù)器的IP地址;距離計(jì)算單元,用于計(jì)算所述多個(gè)資源服務(wù)器的IP地址與用戶所在的網(wǎng)絡(luò)服務(wù)提供點(diǎn)的距離;地址排序單元,用于按照距離由近到遠(yuǎn)的順序?qū)λ龆鄠€(gè)資源服務(wù)器的IP地址排序;地址返回單元,用于將所述多個(gè)資源服務(wù)器的IP地址的排序優(yōu)化結(jié)果發(fā)送給所述用戶。
[0013]根據(jù)本發(fā)明的一個(gè)實(shí)施例,進(jìn)一步的,還包括:請求接收單元,用于接收到所述用戶發(fā)送的指定所述目標(biāo)域名的DNS解析請求;Ρ0Ρ點(diǎn)獲取單元,用于從所述DNS解析請求獲取用戶IP地址,將所述用戶IP地址與預(yù)先配置的各個(gè)網(wǎng)絡(luò)服務(wù)提供點(diǎn)的IP網(wǎng)段地址進(jìn)行匹配,確定所述用戶所屬的網(wǎng)絡(luò)服務(wù)提供點(diǎn);其中,所述用戶IP地址由所述用戶所屬的網(wǎng)絡(luò)服務(wù)提供點(diǎn)分配。
[0014]根據(jù)本發(fā)明的一個(gè)實(shí)施例,進(jìn)一步的,所述距離計(jì)算單元,還用于根據(jù)網(wǎng)絡(luò)拓?fù)鋽?shù)據(jù)庫計(jì)算所述多個(gè)資源服務(wù)器的IP地址到達(dá)所述用戶所在的網(wǎng)絡(luò)服務(wù)提供點(diǎn)的跳數(shù);還包括地址排序單元,用于根據(jù)跳數(shù)最少原則對所述多個(gè)資源服務(wù)器的IP地址的訪問順序進(jìn)行排序,并存儲排序結(jié)果。
[0015]根據(jù)本發(fā)明的一個(gè)實(shí)施例,進(jìn)一步的,所述距離計(jì)算單元,還用于根據(jù)網(wǎng)絡(luò)拓?fù)鋽?shù)據(jù)庫計(jì)算所述多個(gè)資源服務(wù)器的IP地址到達(dá)所述用戶所在的網(wǎng)絡(luò)服務(wù)提供點(diǎn)的跳數(shù);所述地址排序單元,還用于按照網(wǎng)內(nèi)優(yōu)先原則,將與所述用戶在同一運(yùn)營商網(wǎng)絡(luò)中的資源服務(wù)器的IP地址的訪問順序排在前列,并且,根據(jù)跳數(shù)最少原則,對同一運(yùn)營商網(wǎng)絡(luò)或不同運(yùn)營商網(wǎng)絡(luò)中的資源服務(wù)器的IP地址的訪問順序進(jìn)行排序,并存儲排序結(jié)果。
[0016]根據(jù)本發(fā)明的一個(gè)實(shí)施例,進(jìn)一步的,所述距離計(jì)算單元,還用于根據(jù)網(wǎng)絡(luò)拓?fù)鋽?shù)據(jù)庫計(jì)算所述多個(gè)資源服務(wù)器的IP地址到達(dá)所述用戶所在的網(wǎng)絡(luò)服務(wù)提供點(diǎn)的傳輸延遲;所述地址排序單元,用于根據(jù)傳輸延遲最短原則,將所述多個(gè)資源服務(wù)器的IP地址的訪問順序進(jìn)行排序,并存儲排序結(jié)果。
[0017]根據(jù)本發(fā)明的一個(gè)實(shí)施例,進(jìn)一步的,所述地址返回單元,還用于當(dāng)接收到屬于所述網(wǎng)絡(luò)服務(wù)提供點(diǎn)的用戶發(fā)送的、對所述目標(biāo)域名的DNS解析請求時(shí),將存儲的所述排序結(jié)果返回給此用戶。
[0018]一種網(wǎng)絡(luò)系統(tǒng),包括:如上所述的DNS服務(wù)器。
[0019]本發(fā)明的DNS解析方法、服務(wù)器及網(wǎng)絡(luò)系統(tǒng),計(jì)算各個(gè)網(wǎng)站與用戶所在POP點(diǎn)的距離,可基于跳數(shù)、網(wǎng)內(nèi)優(yōu)先、傳輸延遲等策略,選擇一個(gè)距離用戶最近的網(wǎng)站資源提供給用戶訪問,可最大限度節(jié)省網(wǎng)絡(luò)帶寬,提升了用戶訪問互聯(lián)網(wǎng)內(nèi)容資源的業(yè)務(wù)體驗(yàn)。
【附圖說明】
[0020]為了更清楚地說明本發(fā)明實(shí)施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實(shí)施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作一簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實(shí)施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其他的附圖。
[0021]圖1為現(xiàn)有技術(shù)中的域名解析結(jié)果的示意圖;
[0022]圖2為根據(jù)本發(fā)明的DNS解析方法的一個(gè)實(shí)施例的流程圖;
[0023]圖3為根據(jù)本發(fā)明的DNS解析方法的一個(gè)實(shí)施例的網(wǎng)絡(luò)拓?fù)鋽?shù)據(jù)庫同步示意圖;
[0024]圖4為根據(jù)本發(fā)明的DNS解析方法的一個(gè)實(shí)施例的獲取的各POP點(diǎn)的IP網(wǎng)段地址示意圖;
[0025]圖5為根據(jù)本發(fā)明的DNS解析方法的一個(gè)實(shí)施例的緩存的經(jīng)過解析優(yōu)化的域名解析結(jié)果示意圖;
[0026]圖6為根據(jù)本發(fā)明的DNS解析方法的一個(gè)實(shí)施例的域名解析優(yōu)化結(jié)果示意圖;
[0027]圖7為根據(jù)本發(fā)明的DNS解析方法的另一個(gè)實(shí)施例的域名解析優(yōu)化結(jié)果示意圖;
[0028]圖8為根據(jù)本發(fā)明的DNS解析方法的又一個(gè)實(shí)施例的域名解析優(yōu)化結(jié)果示意圖;
[0029]圖9為根據(jù)本發(fā)明的DNS服務(wù)器的一個(gè)實(shí)施例的結(jié)構(gòu)示意圖。
【具體實(shí)施方式】
[0030]下面參照附圖對本發(fā)明進(jìn)行更全面的描述,其中說明本發(fā)明的示例性實(shí)施例。下面將結(jié)合本發(fā)明實(shí)施例中的附圖,對本發(fā)明實(shí)施例中的技術(shù)方案進(jìn)行清楚、完整地描述,顯然,所描述的實(shí)施例僅僅是本發(fā)明一部分實(shí)施例,而不是全部的實(shí)施例?;诒景l(fā)明中的實(shí)施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實(shí)施例,都屬于本發(fā)明保護(hù)的范圍。下面結(jié)合各個(gè)圖和實(shí)施例對本發(fā)明的技術(shù)方案進(jìn)行多方面的描述。
[0031]圖2為根據(jù)本發(fā)明的DNS解析方法的一個(gè)實(shí)施例的流程圖,如圖2所示:
[0032]步驟101,獲取目標(biāo)域名的多個(gè)資源服務(wù)器的IP地址。
[0033]步驟102,計(jì)算多個(gè)資源服務(wù)器的IP地址與用戶所在的網(wǎng)絡(luò)服務(wù)提供點(diǎn)的距離。
[0034]步驟103,將與用戶所在的網(wǎng)絡(luò)服務(wù)提供點(diǎn)距離最近的