NatureDNS--一種自然語言式域名尋址系統(tǒng).cas.201208.v4.from.cas
計算機應(yīng)用與軟件 Computer Applications and SoftwareNatureDNS: 一種自然語言式域名尋址系統(tǒng)劉振興11(人民網(wǎng)股份有限公司 人民網(wǎng)研究院, 北京 中國 100
計算機應(yīng)用與軟件 Computer Applications and Software
NatureDNS: 一種自然語言式域名尋址系統(tǒng)
劉振興
11(人民網(wǎng)股份有限公司 人民網(wǎng)研究院, 北京 中國 100733)
摘 要 本文探討一種使用自然語言進行域名注冊登記、解析和尋址的方法。現(xiàn)行的域名系統(tǒng)(Domain Name System ,DNS )采用層級式的命名空間,點分多段表達式,域名與IP 的對應(yīng)關(guān)系維護在一個分布式的數(shù)據(jù)庫系統(tǒng)中。隨著網(wǎng)絡(luò)發(fā)展這種體系面臨:1)越來越多的人們被迫接受一種點分字符串作為訪問對象的標(biāo)記,2)隨著新頂級域名的增多和國際化域名的啟用,點分字符串的域名變得進一步復(fù)雜多變。在深入分析這一體系及其他相關(guān)改進型探索的基礎(chǔ)上,本文提出一種以“-”(hyphen )為起始和分級標(biāo)記使用自然語言式字符串進行網(wǎng)絡(luò)尋址的新方法(“-xxxx ”),取名為NatureDNS ,即“自然語言式DNS 系統(tǒng)”。 關(guān)鍵詞 網(wǎng)絡(luò)地址;域名;域名系統(tǒng);網(wǎng)絡(luò)尋址;自然語言;國際化域名
中圖分類號 TP3 文獻標(biāo)識碼 A
DOI:
NatureDNS: an Approach to DNS Using Natural Languages
Liu Zhenxing1
1(Institute of People Daily Online, People Daily Online, Beijing 100733, China)
Abstract This paper proposes a new approach to rebuilding the DNS using natural languages to register and resolve a domain name. The current DNS is a hierarchical naming system where a domain is expressed by a dot-delimited string and the mapping of domain names and IP addresses are stored in a distributed database system. With the development of Internet, the DNS encounters: 1) more people are compelled to remember the ever-growing dot-delimited strings as resources addresses; 2) with new gTLD and the IDN are introduced, domain names become more complex than ever. Based on a deep investigation with the DNS and other refining works, the article presents a new method (“-xxxx”) that expresses a domain name with natural languages starting/separating with a hyphen (-) tag, named as “NatureDNS”, i.e., “express domain names in natural languages”.
Keywords Network Addresses; Domain Name; Domain Name System (DNS); IP Addresses Lookup; Natural Languages; Internationalized Domain Names 0 研究背景
域名系統(tǒng)(Domain Name System, DNS)是互聯(lián)網(wǎng)關(guān)鍵性基
礎(chǔ)服務(wù)之一,解決的問題是減省了人們需要記住數(shù)字IP 地址的
負(fù)擔(dān),避免了因為IP 地址變化導(dǎo)致域名所代表服務(wù)不可用,提
供了多地址對應(yīng)一個主機的可能 [1] 。
IPv6作為IPv4的繼承者和替代者,正逐漸向人們走來。IPv6
顯著的、首要的功能就是解決了IPv4地址短缺的問題 [2] 。地
址空間的增大,也帶來了地址表達式長度的增長,現(xiàn)行的IPv6
地址的表達式為分號間隔16進制法,是IPv4的點分十進制表
達式長度的39/15 =2.6倍。
IP 地址表達式的復(fù)雜,導(dǎo)致在應(yīng)用中直接引用IP 地址變得
更加困難。因此,在可見的未來,直接使用IP 地址的地方越來
越少,取而代之的是使用易于理解和記憶的域名作為IP 尋址手
段,這會引起人們對域名系統(tǒng)更加依賴和重視。
另一方面,域名系統(tǒng)也在不斷的發(fā)展,根據(jù)ICANN 的數(shù)
據(jù) [3] ,目前已經(jīng)有頂級域名326個,主要分為三類:通用頂
級域名(gTLD )、國家代碼頂級域名(ccTLD )和贊助類頂級域名(sponsored )。2012年1月,經(jīng)過 ICANN 第41屆新加坡會議確定開放新頂級域名的申請,任何法人組織可以申請任意未被搶注的新頂級域名。根據(jù)2012年6月披露的首批新頂級域名的申請情況,共1930個新頂級域名申請通過初步審查 [4] 。 與此同時,國際化域名從另一個視角來延展域名表達的豐富性——在域名中引入非ASCII 語言符號,也即國際化域名(Internationalized Domain Name, IDN)。多種頂級域名極大的豐富了域名的表達形式,但也可能會商標(biāo)或者品牌保護帶來不利。更多的頂級域名意味著品牌擁有者需要注冊更多的域名來求得全面保護所持有品牌。 以上兩個方面反映出,隨著IPv6的臨近,域名系統(tǒng)正變得日益重要;隨著新頂級域名和國際化域名的推行,域名的表達變得豐富而“雜亂”。這些舉措會給域名系統(tǒng)帶來哪些變化,這些變化對于人們使用互聯(lián)網(wǎng)有哪些影響?有沒有一種更好的方法來解決這些問題?帶著這些思考和想法,本文深入分析了
2
計算機應(yīng)用與軟件
現(xiàn)有的域名系統(tǒng)以及與之相關(guān)的其他研究,提出一種使用自然語言來直接表達域名的新方法,并取名為“NatureDNS ”。
下面的章節(jié)內(nèi)容順序為:在第1章論述了現(xiàn)有DNS 面臨的問題;第2章列舉和分析了目前對上述問題進行改進和補充的方式方法;第3章詳細(xì)闡述了NatureDNS 域名系統(tǒng),分定義、注冊與解析過程、實例與應(yīng)用場景、對比分析等小節(jié);第4章提出由現(xiàn)行DNS 系統(tǒng)向NatureDNS 過渡的方法;第5章進行總結(jié);第6章補充了進一步的研究工作。
1 DNS 系統(tǒng)面臨的問題
1.1 DNS 系統(tǒng)自身
現(xiàn)行的DNS 系統(tǒng)是1983年由美國兩位計算機科學(xué)家發(fā)明,起初的目標(biāo)是取代維護在單機上的“主機表(host table)”[5] 。近30年后的今天看來這個系統(tǒng)仍在可靠地運行中,并可能將繼續(xù)為互聯(lián)網(wǎng)的發(fā)展作出貢獻。然而,今天的互聯(lián)網(wǎng)技術(shù)水平和發(fā)展規(guī)模,與幾十年前畢竟有很大不同,若以現(xiàn)在的條件來審視這一域名系統(tǒng),并結(jié)合該域名面臨的一些改革,有如下幾點不足可供改進。
(1) 點分多級不均等域 DNS 要表達“域”的概念,將一個整體的互聯(lián)網(wǎng)劃分成.COM 域,.NET 域等,然后有了地區(qū)的.US 域,.CN 域等,之后才是每個域上的二級域。這種分法在理論是可靠的,也是可行的,但卻不是最優(yōu)的,一個明顯的地方是,這種設(shè)計不是從人的角度去認(rèn)識和區(qū)分互聯(lián)網(wǎng)。最早將網(wǎng)絡(luò)簡單的劃分為.COM/NET/ORG等有限的幾個域,顯然是過于簡略了,后期啟用了國家代碼頂級域名緩解了一下,目前的任意字符的頂級域名才更接近人的思維。
不均等的.COM/NET/ORG等域帶來的問題是,域的擁有者都想擁有一個.COM 的二級域,而網(wǎng)絡(luò)使用者則會首選.COM 域去訪問(Figure 1)。研究 [6] 發(fā)現(xiàn)大部分網(wǎng)絡(luò)用戶只用了很少一小部分DNS 服務(wù)器。
Figure 1 前五通用頂級域名的注冊量及百分比 [7]
如果大多數(shù)二級域都在一個域里,那么這個域的分法就值得商榷,最大的域就非常擁擠,資源也相對稀缺,有進一步細(xì)分的必要。DNS 首要使命是解決人們難以記住IP 數(shù)字地址,采用點分多級表達法降低了記憶難度,而沒有真正的解決這個問題。
(2) 非自然語言
點分多級的表達式強加給了人們另外一種語法,為了使用互聯(lián)網(wǎng),人們不得不像學(xué)習(xí)信件地址格式一樣再學(xué)習(xí)一種“網(wǎng)絡(luò)地址格式”。如果有可能,改成人們似乎用的自然語言來表
達網(wǎng)址,就像信件的地址一樣,無疑會減省人們學(xué)習(xí)的網(wǎng)絡(luò)地址格式的繁瑣。
(3) 受限的LDH 表達式
技術(shù)上看,DNS 的域名可以使用任何八進制的字符,但實際被允許使用的字符集只是ASCII 字符集的一個子集,也即字母a-z, A-Z 、數(shù)字0-9和連字符“-”,又由于域名不區(qū)分大小寫,所以實際使用的字符只有26個字母,10個數(shù)字,1個連字符共37個符號,這就是LDH 規(guī)則(Letters, Digits and Hyphen)。
就連使用其他ASCII 符號做域名都不被允許,這從根本上否定了使用其他語言來注冊域名的可能性。如此小的字符集合,全世界的網(wǎng)絡(luò)使用者來搶注域名,這可能也是ICANN 不斷探索新的域名表達式的原因之一。
(4) 過度設(shè)計的127-253
與現(xiàn)行的DNS 狹小的表達空間相比,對域名長度的設(shè)計可謂綽綽有余。DNS 設(shè)計成每個Label (每級域的名稱)的長度可以有63個字符,可以劃分成127級,總長度可以允許253個字符。
統(tǒng)計數(shù)據(jù)顯示,目前注冊登記的域名,平均長度只有11個字符(Figure 2)。
Figure 2 已注冊域名的長度分布 [8]
如果在網(wǎng)絡(luò)上檢索,也能發(fā)現(xiàn)發(fā)現(xiàn)超長至63字符的域名,但多數(shù)是驗證域名的這條規(guī)則或者是另外一種噱頭,如http://www.abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyzabcdefghijk.com/ 等超長域名 [9] 。與IP 地址的預(yù)留空間越大越好,設(shè)計給人類使用的域名,是越簡單越好,試圖挑戰(zhàn)人類的臨時記憶極限的方法可以再改進。
(5) 其他問題
也有其他學(xué)者指出 [10],現(xiàn)行的DNS 系統(tǒng)除了上述域名設(shè)計上的不足之外,還存在著記錄更新速度慢、服務(wù)模式單一、資源描述能力不夠強、配置易出錯等缺點。
1.2 IPv6帶來的新需求
如在“研究背景”一節(jié)所述,IPv6正向我們走來,其中的一個顯著的變化是IPv6地址表達式長度增長到39字節(jié) [11],如,
2001:0DB8:0000:2F3B:02AA:00FF:FE28:9C5A
如果說在IPv4時代,還能夠?qū)⑿稳纭?.2.3.4”直接應(yīng)用在程序中,那么在IPv6時代這種可能性變得更小。取而代之的,越來越多的應(yīng)用選擇比以往更加頻繁地使用DNS 系統(tǒng)進行尋址。隨著而來的還有互聯(lián)網(wǎng)的進一步滲透發(fā)展——物聯(lián)網(wǎng),更
,計算機應(yīng)用與軟件
3
多智能終端設(shè)備接入互聯(lián)網(wǎng)絡(luò)。
這一方面會加重DNS 服務(wù)器的負(fù)擔(dān),另一方面會迫使用戶不得不在短域名之外尋找相對復(fù)雜難記的長域名來用,只要這個域名看起來比IPv6地址稍微好些就可以。
谷歌2012年2月份宣稱其提供的Public DNS 成為世界上最大的DNS 服務(wù)提供商,每天處理超過700億次查詢 [12]。
這也帶來了一個新的契機,或籍此解決互聯(lián)網(wǎng)發(fā)展中的IP 地址語義過載的問題 [10],由于IPv6地址的復(fù)雜化,迫使應(yīng)用層不再試圖使用網(wǎng)絡(luò)層的標(biāo)識,把設(shè)備的身份標(biāo)志和位置標(biāo)志分離開來。
2 DNS 改進的方式方法
2.1 關(guān)鍵詞尋址技術(shù)
網(wǎng)絡(luò)技術(shù)從實驗室走出來之后,其絕大多數(shù)多用戶就由科研技術(shù)人員變成了普通民眾。人們在使用互聯(lián)網(wǎng)的時候更希望是使用已知的語言和方式進行相關(guān)操作,這催生了一種新的尋址方式的產(chǎn)生——網(wǎng)絡(luò)關(guān)鍵詞(Internet Keyword)技術(shù) [13]。
網(wǎng)絡(luò)關(guān)鍵詞技術(shù)通過建立關(guān)鍵詞與網(wǎng)絡(luò)資源地址對應(yīng)關(guān)系,來實現(xiàn)通過輸入某一特定關(guān)鍵詞直達對應(yīng)網(wǎng)絡(luò)資源地址的實現(xiàn)方式。網(wǎng)絡(luò)關(guān)鍵詞允許用戶直接使用企事業(yè)單位名稱、簡稱,商品、產(chǎn)品的全稱或者簡稱,網(wǎng)站的中文名稱等直接到達網(wǎng)站,對本地用戶來說,是非常接近自然語言的一種網(wǎng)絡(luò)資源定位方式,符合用戶的使用習(xí)慣。比如去清華大學(xué)的網(wǎng)站,使用“-清華大學(xué)”比“TSINGHUA.EDU.CN ”更容易。
然而,這種方式本質(zhì)不是域名到IP 地址的轉(zhuǎn)換,而是關(guān)鍵詞到URL 地址的映射,因此不是真正意義上的域名系統(tǒng),而且域名系統(tǒng)相關(guān)的問題都沒有觸及。盡管十分好用,但需要單獨安裝額外的客戶端和沒有分層級的扁平結(jié)構(gòu)阻礙了其進一步的發(fā)展。
2.2 國際化/多語種域名
與關(guān)鍵詞尋址技術(shù)不同,國際化域名(Internationalized Domain Name, IDN)是實實在在的要在域名中引入非ASCII 字符,也即向使用本地語言來表達域名的方向努力。
如前所述,之前的DNS 中,受LDH 規(guī)則限制,域名的表達方式只有37個ASCII 字符,IDN 將使用Unicode 字符集內(nèi)的絕大多數(shù)字符,通過NamePrep (Name Preparation ),ACE(ASCII-Compatible Encoding)等處理方式,把非ASCII 字符轉(zhuǎn)換成ASCII 的表達形式 [14]。
Figure 3 中文域名
如在已經(jīng)支持IDN 技術(shù)的瀏覽器里輸入“導(dǎo)航. 中國” ,瀏覽器將地址轉(zhuǎn)換為“http://xn--fet810g.xn--fiqs8s/”,同時加載“中文域名網(wǎng)址大全”的頁面,如Figure 3所示。
這是最接近自然語言的一種方式,如果去掉了中間的點號分隔符的話。
它的不足在于只是對DNS 改良,將非ASCII 字符處理成ASCII 字符,因為這個提供了其與現(xiàn)行DNS 兼容的可行性,也
因為這一點導(dǎo)致其無法再往前一步。另外,地址欄內(nèi)的Punycode 代碼 [15] 對用戶也顯得不友好。如Figure 4所示。
Figure 4 地址欄內(nèi)的Punycode
2.3 新頂級域名
國際化域名解決的問題是使用非ASCII 來表達域名,這一問題對英語國家來說是不存在的,可能也因為這一點,以說英語國家為主的互聯(lián)網(wǎng)管理協(xié)調(diào)機構(gòu)解決域名稀缺的問題角度也就不同。與非英語國家積極探索使用本地語言來表達域名的解決辦法不同,互聯(lián)網(wǎng)協(xié)調(diào)與管理機構(gòu)ICANN 最近幾年運作的對頂級域名擴增的部分日益加快 [16]。
Figure 5 新頂級域名 [17]
國際化域名與新頂級域名不是對立的舉措,在新頂級域名的申請中,也可以遞交非LDH 的字符作為新頂級域名。根據(jù)ICANN 的描述,ICANN 理事會于 2011 年 6 月通過決議,決定實施新 gTLD 計劃。2012年6月第一批1930個 “新頂級域名”通過初步審查,在此之前,已經(jīng)有22個“通用頂級域名 (gTLD)”和280個“國家頂級域名 (ccTLD)”。
這一舉措緩解了DNS 設(shè)計之初簡單的.COM 域劃分導(dǎo)致的域名稀缺,并且形成一套規(guī)則,隨著以后逐步推進頂級域可以無限多。
然而,新頂級域名也為域名系統(tǒng)帶來負(fù)面影響,其中之一就是不利于企事業(yè)單位的品牌保護。理論上,設(shè)若有N 種頂級域名,M 種國家代碼頂級域名和K 種國際化語言,那么一個公司要保全所有的注冊商標(biāo),需要注冊的域名個數(shù)為:
T (域名總數(shù))= N(頂級域名)× M (國家代碼頂級域名)× K (國際化語言)
根據(jù)已知的數(shù)據(jù)N=22, M=280,國際化語言版本在IDN 實踐[18]中顯示,有98種.COM 的語言版本,因此,以保護ufqi.com 這個品牌UFQI 為例,需要注冊的全部域名為:
T = 22 × 280 × 98 = 603,680 (個域名)
若以每域名每年費用100元人民幣計,則企事業(yè)單位年度域名注冊費為:
603,680 × 100 = 60,368,000 (元人民幣)
如果再加上申請中的1930個“新頂級域名”,則是一筆更大的開支。有統(tǒng)計數(shù)據(jù)顯示[19] ,截至2011年8月Google 已
,4
計算機應(yīng)用與軟件
經(jīng)注冊了9591個域名。
其次,從另外一個角度來看,如果“域”可以隨意劃分和定義,那么“域”就沒有存在的意義了。
再次,如此多的頂級域名,對普通用戶來說會因為選擇太多而顯得雜亂和無所適從,適得其反地使用戶對新頂級域名有抵觸感情。從而導(dǎo)致對用戶、對企業(yè)雙輸?shù)木置妗?/p>
2.4 通用搜索引擎
搜索引擎是廣義上的“關(guān)鍵詞尋址技術(shù)”,解決了“關(guān)鍵詞”到網(wǎng)絡(luò)資源的定位,所不同的是,關(guān)鍵詞定位技術(shù)提供了直接跳轉(zhuǎn),而搜索引擎提供的是與之相關(guān)的網(wǎng)絡(luò)資源列表。相比較之下,對普通用戶而言,搜索引擎對“找東西”的人來說,有更大的選擇和更友好的用戶體驗。
和關(guān)鍵詞尋址技術(shù)一樣,搜索引擎也沒有解決DNS 的核心任務(wù)——解析域名到數(shù)字IP 地址,隔離應(yīng)用層和網(wǎng)絡(luò)層。也許普通用戶可以忘記DNS 的存在,但應(yīng)用層卻不能。
2.5 其他對DNS 的補充和改進
如上所述,在域名設(shè)計層面對DNS 系統(tǒng)做了一些改進的嘗試。除此之外,在其他層面上,對IP 地址與域名的混用,對DNS 的一些缺陷也做了許多補充,主要有HIP (Host Identity Protocol ),PeerNet ,URN (Uniform Resource Names ),INS (International Naming System)和CoDoNS (Cooperative Domain Name System)等[10]。
3 NatureDNS
3.1 NatureDNS
(1) NatureDNS 的定義
NatureDNS 是一種以自然語言為域名表達形式,通過將自然語言編碼后的字符串與IP 數(shù)字地址建立對應(yīng)關(guān)系,實現(xiàn)網(wǎng)絡(luò)域名尋址的技術(shù)系統(tǒng)。它采用通過語義本身來隱式地定義域,使用符合本地語言語法的詞組或者句子的表達方式來定位網(wǎng)絡(luò)資源。
NatureDNS 域名由連續(xù)的實義字符組成,定義連字符“-”(hyphen )作為下一級子域的開始,或者稱之為NatureDNS 的根域 (“-”) 。NatureDNS 的域名必須以連字符開始,而不能以連字符結(jié)尾,可以有多個子級域,其正則表達式為:
^-([^-] )([-])([^-] )$
連字符(hyphen )“-”在這里可以理解為“連接/前往(Connect/to)”某個主機/域,或者理解成就是一根可以連接任何網(wǎng)絡(luò)的網(wǎng)線,與在電話號碼前加“ ”類似。下列NatureDNS 域名表達式是合法的:
Table 1 NatureDNS域名樣例
下列NatureDNS 域名是不合法的:
中國導(dǎo)航 -People-
其中兩個以上連續(xù)的連字符會被等同視為一個。
域從大到小從左至右排列,域級之間使用連接符隔開,如: -live-mail-bay146-bay146w (by146w.bay146.mail.live.com )
上面的域名可以理解成從當(dāng)前連接到live 域的子域mail ,再從mail 的子域bay146中查找bay146w 所代表的主機IP 地址。
由于“-人民網(wǎng)財經(jīng)”比“-人民網(wǎng)-財經(jīng)”更符合人們使用習(xí)慣,因此前者可以單獨注冊一個獨立域名以區(qū)別于后者“-財經(jīng)”作為“-人民網(wǎng)”的子域。
(2) 注冊與解析
NatureDNS 與現(xiàn)行的DNS 結(jié)構(gòu) [2] 相似,由4個部分構(gòu)成:1)客戶端解析器,2)本地DNS 服務(wù)器,3)授權(quán)DNS 服務(wù)器,4)根和頂級域DNS 服務(wù)器。如Figure 6所示,其中的gTLD 可能包含多層。
Figure 6 DNS組成部分 [6]
Figure 7 NatureDNS解析流程
NatureDNS 解析過程除了在客戶端做編碼外,其余的與現(xiàn)有的DNS 解析處理過程 [20] 一致,主要步驟如Figure 7所示。
NatureDNS 域名的注冊過程與現(xiàn)有DNS 注冊基本一致,除了在注冊時,生成域名的Punycode 并同時以Punycode 為索引來存儲和管理。
為正確顯示和處理國際化語言,注冊系統(tǒng)要支持UTF-8等國際化語言顯示字符編碼。
(3) NatureDNS 輪詢系統(tǒng)
,計算機應(yīng)用與軟件
5
Figure 8 NatureDNS層級查詢樹
NatureDNS 的輪詢結(jié)構(gòu)采用分層樹狀結(jié)構(gòu)(如Figure 8)。
在最頂層根服務(wù)器(Root-A, B, C等)。每個Root 后面對應(yīng)著
一組頂級域查詢服務(wù)器群,標(biāo)記為“a ?”的負(fù)責(zé)進一步的解析
NatureDNS 域名Punycode 編碼以字母a 開頭的頂級域名,以
“b ?”處理以字母b 開頭的Punycode 編碼的域名,循此直到
z 開頭、0-9開頭的頂級域名。
頂級數(shù)據(jù)表中,視所查詢域名的情況,如果存在以連字符
連接的二級域,則進一步按此形如“9a ?”, “9b ?”, “9c ?”
開頭的形式做進一步的查找;如果只有此一頂級域名,則從
“a ?”獲得該域名的授權(quán)DNS 服務(wù)器IP ,請求被進一步的前
轉(zhuǎn)到所查詢域名的授權(quán)DNS 服務(wù)器,在那里獲知當(dāng)前域名對應(yīng)
的IP 數(shù)字地址。
(4) 分析比較與評估
NatureDNS 系統(tǒng)使用一些新方法來實現(xiàn)使用自然語言進行
扁平化的方式來表達域名地址。
Unicode ,是國際組織制定的試圖包括世界上所有文字和符
號的字符編碼方案,目標(biāo)定位于滿足用戶在計算機輸入的任何
字符都能夠使用Unicode 表示出來。盡管Unicode 本身也在發(fā)
展進化中,但比起使用某一種語言的某個字符集而言,其穩(wěn)定
性相對較好。Unicode 的實現(xiàn)方式之一UTF-8在互聯(lián)網(wǎng)上得到
廣泛的使用。
ACE Punycode,這種算法滿足了將Unicode 表示的多語種
域名編碼成ASCII 表示的域名,如此一來可以在不改變現(xiàn)有
ASCII 域名協(xié)議的情況下,實現(xiàn)對國際化域名的支持,同時可
以兼容舊的不支持Unicode 的主機系統(tǒng),為并行和過渡系統(tǒng)提
供了可能。Punycode 提供了較好的Unicode 與ASCII 互轉(zhuǎn)的算
法,除此,還可以考慮使用Base62x ,實現(xiàn)類似功能 [21] 。
層級式,與現(xiàn)行DNS 系統(tǒng)一樣,NatureDNS 繼承了這一優(yōu)
點,發(fā)展和運行經(jīng)驗表明,這是一個穩(wěn)定的結(jié)構(gòu),在負(fù)載分發(fā)、
可用性和部署方式上都表現(xiàn)不錯 [6]。
另外一點需要考量的是性能。NatureDNS 對比現(xiàn)行DNS 系
統(tǒng),在客戶端增加了將非ASCII 字符轉(zhuǎn)為Punycode 代碼的開銷,
在服務(wù)器端增加對非ASCII 字符的存儲空間。在客戶端進行字符串進行轉(zhuǎn)碼的操作是運行在每個獨立的終端上,多一個轉(zhuǎn)碼步驟不會對DNS 系統(tǒng)造成任何性能影響,一是運算處理是分布式地在每一臺終端進行,二是Punycode 代碼是經(jīng)過優(yōu)選的算法,經(jīng)過這一轉(zhuǎn)碼操作之后進入DNS 輪詢系統(tǒng)的只有Punycode 。在NatureDNS 的服務(wù)器端,在DNS 記錄集上,多增加一個數(shù)據(jù)字段,這對于目前的計算處理能力和存儲空間來說,都是可以實現(xiàn)的。后期,在下文中會提到過渡方案,待到全部系統(tǒng)都支持Unicode (UTF-8)之后,Punycode 轉(zhuǎn)碼就可以省略,服務(wù)器端的DNS 記錄也可以減去一個字段,整個DNS 系統(tǒng)恢復(fù)到NatureDNS 變更以前的狀態(tài)。因此在NatureDNS 開始部署及從DNS 向NatureDNS 過渡期間,客戶端和服務(wù)器端可能會輕微地增加一些運算和存儲,理論上推算增加一步Punycode 轉(zhuǎn)碼或增加一列字段,都不會對系統(tǒng)造成嚴(yán)重影響。 3.2 實例及應(yīng)用場景 (1) 實例域名注冊與解析過程 如下以“-有福氣網(wǎng)-科技”(tech.ufqi.com )的為例說明NatureDNS 注冊與解析流程的運行機制。 在注冊前端系統(tǒng)收集數(shù)據(jù),獲得“有福氣網(wǎng)”和“科技”的Punycode 為“8ov35i1wnrsf ”和“2qux23c ” ,則在生成的DNS 數(shù)據(jù)文件(“8ov35i1wnrsf.zone ”和“有福氣網(wǎng).zone ”)里形成的對應(yīng)記錄為: 科技 2qux23c IN A 1.2.3.4 記錄格式為: UTF-8字符串 Punycode 碼 Class RRType Data
,6
計算機應(yīng)用與軟件
Figure 9 實例域名解析過程
該域名的解析過程如Figure 9所示,每個步驟執(zhí)行內(nèi)容: S1. 客戶機發(fā)出“-有福氣網(wǎng)-科技”(8ov35i1wnrsf )的域名解析請求;
S2. 本地DNS 在本地緩存找到則直接返回給客戶機,如果沒有找到,則向根域“-”發(fā)出“-有福氣網(wǎng)-科技”(8ov35i1wnrsf )地址的請求;
S3. 根域“-”根據(jù)其Punycode 碼獲知是以“8”開頭的,遂將“8?”子域的參考信息(IP 地址)返回給本地DNS ;
S4. 本地DNS 訪問“8?”DNS, 請求8ov35i1wnrsf 域名的IP 地址;
S5. “8?”DNS 根據(jù)自己的記錄,將8ov35i1wnrsf 對應(yīng)的該域名的參考信息(授權(quán)DNS 的IP 地址)返回給本地DNS ;
S6. 本地DNS 根據(jù)收到的IP 地址,向授權(quán)DNS 發(fā)出請求解析8ov35i1wnrsf 域名的IP 地址;
S7. 8ov35i1wnrsf 域名的授權(quán)DNS 根據(jù)自己的記錄信息,返回8ov35i1wnrsf 域名對應(yīng)的IP 地址給本地DNS ;
S8. 本地DNS 將該域名和IP 對應(yīng)關(guān)系緩存后,將IP 地址傳給客戶機。
(2) 應(yīng)用場景HTTP, Email
NatureDNS 在實際應(yīng)用場景中的情形如下, 如用NatureDNS 域名在瀏覽器里訪問一個網(wǎng)站,有如下例子網(wǎng)址:
如用在Email 地址里,則用NatureDNS 域名的email 地址形如:
張三@-中國計算機學(xué)會 JohnWang@-NewYorkTimes 在已知的語境下,如果當(dāng)前位置期望的是一個主機IP 或者域名,則根域(“-”) 可以省略,變成
如用在命令行下,因為與參數(shù)標(biāo)志符沖突,需要轉(zhuǎn)義操作,如:
Shell> telnet -有福氣網(wǎng) 22
3.3 NatureDNS 的優(yōu)點
與現(xiàn)行的DNS 系統(tǒng)相比,NatureDNS 有如下幾點優(yōu)勢。 (1) 使用本地化自然語言標(biāo)記,易懂易記易用
使用本地化自然語言既有利于品牌保護,將訪問域名設(shè)置
成與商標(biāo)、商品名稱相一致;也避開了非英文國家的人們在普及互聯(lián)網(wǎng)過程中遇到的障礙,本地化語言或能加速互聯(lián)網(wǎng)在非英語國家的推廣和普及,改進人們使用互聯(lián)網(wǎng)的方式。
比如在中文環(huán)境中,每一個網(wǎng)站有個英文的網(wǎng)址,然后推廣的時候又需要取一個符合中文文化的名稱,使用NatureDNS 就可以合二為一。無需去記憶“新華網(wǎng)”、“凱迪網(wǎng)”對應(yīng)的域名“xinhuanet.com ”和“kdnet.net ”,當(dāng)然也不會有兩個開心網(wǎng)——“kaixin.com ”和“kaixin001.com ”[22] 。
(2) 自由的表達格式,寬松的表達空間
以“. ”為根域,然后依次擴展頂級域,二級域等表達方式,以及僅用LDH 字符等,不符合常規(guī)的英語語法,更不符合非英語國家的人們語言習(xí)慣。NatureDNS 域名除了“-”字符外,不限定表達方式。與之相比,極大的豐富了表達式多樣性,從一個極小的37個字符的集合,擴大到所有Unicode 字符,而且對語法也不作過多限制。
(3) 避免過多頂級域名帶來的混亂
現(xiàn)行DNS 最早只劃分少數(shù)幾個.COM/NET/ORG頂級域,導(dǎo)致域名資源緊缺,現(xiàn)在推行任意頂級域名和國際化域名,或?qū)⒁l(fā)域名注冊的混亂,使域名保護變得困難。如此前所述,在沒有推行新頂級域名之前,一個域名品牌要注冊603,680個域名才能保全所有頂級域和二級域,新增1930個頂級域名之后,域名品牌保護將變得更加困難。
NatureDNS 沒有類別頂級域和地區(qū)頂級域,而是從語義上區(qū)分歸屬和類別,避免了這種可能的混亂局面。
(4) 繼承并改進了層級結(jié)構(gòu)
NatureDNS 繼承了現(xiàn)行DNS 的層級樹狀輪詢系統(tǒng),并對其進行了改進。而且使用域名本身的特征碼,如首位字符將查詢量均分到所有服務(wù)器群。
(5) 推進解決IP 地址語義過載問題
IP 地址語義過載是IPv4時代就有的問題,如果沒有解決好域名緊缺和域名混亂相交互的局面,這個問題可能也要帶入到IPv6時代。NatureDNS 域名因其易用性將有助于推進在應(yīng)用層盡可能少地使用網(wǎng)絡(luò)層的設(shè)備標(biāo)志——IP 地址。
4 過渡方案
過渡方案遵循的原則是與現(xiàn)有DNS 系統(tǒng)并行,同時使用UTF-8和Punycode 記錄域名,對只支持ASCII 的系統(tǒng),只使用Punycode 定位;待所有DNS 系統(tǒng)都支持UTF-8之后,減去Punycode 編碼環(huán)節(jié)。
在現(xiàn)行的DNS 中并列運行一套新的NatureDNS 系統(tǒng),根據(jù)先后順序并行情況可分為三期:i) 前向兼容:在現(xiàn)行DNS 中建立“.-”頂級域;ii) 反轉(zhuǎn)切換:使用根域“-”替代現(xiàn)行的DNS 中的“. ”根域;iii) 后向兼容:在NatureDNS 頂級域中建立“-. ”頂級域。
4.1 前向兼容
NatureDNS 的切入點分DNS 客戶端端升級和服務(wù)器升級。在客戶端,允許所有“-xxxx ”命名的域名,并轉(zhuǎn)換成形如“xxxx.-”的現(xiàn)行DNS 系統(tǒng)格式,進入現(xiàn)行DNS 解析系統(tǒng)。在服務(wù)器端,現(xiàn)行的DNS 中寫入一個“.-”(dot hyphen)頂級域,接管發(fā)向現(xiàn)行DNS 系統(tǒng)根DNS 對“-xxxx ”的解析請求。由新運行的“.-”域負(fù)責(zé)對NatureDNS 新域名的解析,如Figure 10所示。
,計算機應(yīng)用與軟件
7
Figure 10 增加新頂級域hyphen
4.2 反轉(zhuǎn)切換
啟用前向兼容后,引導(dǎo)企事業(yè)單位和個人將現(xiàn)行的DNS 域名轉(zhuǎn)換為新的NatureDNS 域名,待“.-”頂級域的使用量超過50或更高占比之后,將現(xiàn)行DNS 頂級的根域由“. ”切換成“-”。此前這一時期之前是兩個DNS 系統(tǒng)并行,實際上是在現(xiàn)行DNS 系統(tǒng)模擬運行NatureDNS 系統(tǒng);此后全面啟用NatureDNS 系統(tǒng),如Figure 11所示。
Figure 11 切換成hyphen 為根域
4.3 后向兼容
在全面啟用NatureDNS 系統(tǒng)的同時,在“-”根域中寫入“-. ”(hyphen dot) 頂級域,負(fù)責(zé)解析現(xiàn)行DNS 的原域名如“a.b.com ”。與此同時升級客戶端解析,增加功能將“a.b.com ”的域名轉(zhuǎn)為“-.a.b.com ”發(fā)給在NatureDNS 中頂級域“-. ”負(fù)責(zé)解析,也即在NatureDNS 中模擬運行原DNS 系統(tǒng),如Figure 12所示。
Figure 12 在hyphen 根域中增加dot 頂級域
此時,在“-”根域中模擬解析“. ”根域的域名,待到“a.b.com ”的歷史DNS 域名流量逐漸減少到一個極小的量級后,設(shè)定一個緩沖期,然后永久性關(guān)閉“-. ”頂級域,DNS 系統(tǒng)全面地、單一地使用全新的NatureDNS 系統(tǒng)。
5 結(jié) 論
本文提出了一種新的域名系統(tǒng)方法,由使用以hyphen 為起始和分級標(biāo)記的域名表示方法(“-xxxx ”)和基于這種域名的注冊、解析系統(tǒng)組成,被命名為NatureDNS ,即“自然語言式域名尋址系統(tǒng)”。
現(xiàn)行DNS 在域名設(shè)計層面存在一些問題,如點分多級不均等域、只有LDH 表達字符等,這些問題阻礙了DNS 系統(tǒng)進一步發(fā)展。針對這些問題技術(shù)專家們從未停止探索的腳步,提出各種改進和補充的方式方法,如上文所列舉的關(guān)鍵詞尋址、國
際化域名、新頂級域名,以及其他學(xué)者提出相關(guān)改進措施。由于域名系統(tǒng)的基礎(chǔ)性與關(guān)鍵性,雖有改進但主要問題依然存在。
本文提出一種新的方法,將域名重新定義為以hyphen 開頭任意實義字符組成的連續(xù)字符串格式(“-xxxx ”),極大地擴展了域名表達的多樣性和豐富性。并在上文章節(jié)中給出了詳細(xì)的闡述,對其注冊與解析過程、實例與應(yīng)用場景、過渡方案等環(huán)節(jié)做了詳細(xì)分析。
相比較而言,NatureDNS 優(yōu)勢在于: 使用本地化自然語言標(biāo)記,易懂易記易用 自由的表達格式,寬松的表達空間 避免過多頂級域名帶來的混亂 繼承并改進了層級結(jié)構(gòu) 推進解決IP 地址語義過載問題
對NatureDNS 這個新事物而言,還有一些研究工作要做,隨后一章列舉了二點:一個實體名的多個變體和Unicode 的進化對NatureDNS 的影響。
我們相信NatureDNS 域名系統(tǒng)會給全球網(wǎng)絡(luò)系統(tǒng)帶來一些思考和改進,使得DNS 系統(tǒng)不再是阻礙互聯(lián)網(wǎng)發(fā)展的因素,而是促進互聯(lián)網(wǎng)更快更好地惠及全球,讓人類的生活變得更加美好。
6 進一步的研究
6.1 一個實體名的多個變體
使用自然語言來表示域名為域名的表達提供了極大的豐富性和多樣性。NatureDNS 除了占用了“-”(hyphen )作為標(biāo)志符和分節(jié)符,其余所有的語法形式和可打印的字符形式都是被允許的。這可能面臨一個問題是,具體到一個實體名,可能有多種表達方式,如同一個人有全名、昵稱、俗稱、簡稱一樣,到底使用哪個來注冊,還是全部都要注冊需要制定的相應(yīng)的規(guī)則。
6.2 Unicode 進化帶來的影響
由于兼容國際化語言,經(jīng)過權(quán)衡我們選擇了Unicode 統(tǒng)一編碼字符集,并推薦了Punycode 和Base62x 兩個將Unicode 字符ASCII 化的編碼方案。
然而,Unicode 本身也在進化中,這種進化盡管幅度很小、步子很慢,但可能因此影響到NatureDNS 的穩(wěn)定性——作為互聯(lián)網(wǎng)基礎(chǔ)核心服務(wù),DNS 對穩(wěn)定性的要求無論多么苛刻都不為過。對此,隨著Unicode 的日趨成熟,其變化頻次逐漸減少;另外只要NatureDNS 有相應(yīng)的更新修正機制即可應(yīng)對。
參 考 文 獻
[1] J. Klensin. IETF RFC3467, http://tools.ietf.org/html/rfc3467, 2012.06.15. [2] Z. Liu., L. Liu., et al, "Dot-base62x: A Compact Textual Representation
of IPv6 Address for Clouds," in UCC '11 Proceedings of the 2011 Fourth IEEE International Conference on Utility and Cloud Computing, Melbourne, 2011.
[3] Root Zone Database, http://www.iana.org/domains/root/db/, 2012.06.15. [4] New
gTLD
Reveal
Day
-
Applied-for
Strings,
,8
計算機應(yīng)用與軟件
[5] P.
Mockapetris.
IETF
RFC882,
2012.06.15.
[6] J. Pang., J. Hendricks. and et. al, "Availability, usage, and deployment
characteristics of the domain name system," in IMC '04 Proceedings of the 4th ACM SIGCOMM conference on Internet measurement, Sicily, Italy, 2004.
[7] Global Domain Registry Statistics, http://www.webhosting.info/registries/,
2012.06.15. [8] Domain Name Length Allocation,
World ’s
Longest
Domain
Name,
[10] D. Liu., Y. Chen., K. Xie. and J. Wu, "Research on the Structures and
Resolutions of Internet Namespaces," Journal of Software, vol. 16, no. 8, pp. 1445-1455, 2005.
[11] B. Stockbrand, IPv6 in Practice -- A Unixer's Guide to the Next
Generation Internet, Verlag Berlin Heidelberg: Springer, 2007, pp. 22-29. [12] Google
Public
DNS:
world’s
largest
DNS
service ,
[13] W. Mao.;Y. Wang., F. Wang., "The New Generation Technologies of
Internet Resources Naming and Addressing," Application Research of Computers, vol. 21(4), pp. 233-235,250, 2004.
[14] H. Zhang., X. Deng. and H. Qian., "Analysis of Internationalized Domain
Name System," Journal of Computer Applications, vol. 22(10), pp. 9-11, 2002.
[15] IETF RFC 3492, “Punycode: A Bootstring encoding of Unicode for
IDNA”, http://tools.ietf.org/html/rfc3492, 2012.06.15 [16] ICANN, “New
Generic Top-Level
Domains ”, http://newgtlds.icann.org/en/about, 2012.06.15
[17] NetC,
“New
gTLD ”, http://www.net-chinese.com.tw/new_gtld/new_gtld.asp, 2012.06.15 [18] IANA,
“Repository
of
IDN Practices”,
[19] Tuwang, “Google 一共有多少個域名”, http://www.tuwang.org/394.html,
2012.06.20
[20] J. Gan. and L. Huang., "The Research on Translating of Domain name and
Practice of Server Configuration," JOURNAL OF YULIN NORMAL UNIVERSITY (Natural Science), vol. 28, no. 5, pp. 136-141, 2007. [21] Z. Liu, L. Liu, R. Hill and Y. Zhan, "Base62x: An alternative approach to
Base64 for non-alphanumeric characters," in Fuzzy Systems and Knowledge Discovery (FSKD), 2011 Eighth International Conference, Shanghai, 2011. [22] 人
民
網(wǎng)
,
“
兩
個
開
心
網(wǎng)
之
爭
”
,
,計算機應(yīng)用與軟件
9
--作者簡介及聯(lián)系方式--
第一作者:劉振興 電話:8610-65363472 手機:139 1190 1921
Email :
作者簡介:劉振興,人民網(wǎng)研究院網(wǎng)絡(luò)技術(shù)研究員,碩士研究生學(xué)位,主要研究領(lǐng)域為IP 網(wǎng)絡(luò)通信協(xié)議、互聯(lián)網(wǎng)后臺支撐技術(shù)、網(wǎng)絡(luò)安全與架構(gòu)等,在上述領(lǐng)域發(fā)表過一些中英文論文。
本文研究背景:
This paper makes a deep investigation into the Domain Name System (DNS). DNS is regarded as one of the core and critical infrastructures of Internet. It transfers human-readable names into IP addresses under the networks, and vice versa.
Due to its design of domain names which only allow LDH (letters, digits and hyphen) characters to be used in, the DNS cannot cope with the increasing demand for more domain names arising by more devices are connected to Internet, especially to mobile Internet. Another reason to encourage scholars to look for improvements to the DNS is IP overload in semantics. Some other issues are also found with the DNS, e.g. unique service model, slow update speed and weak capacity in resource description.
Thus, lots of efforts have made to improve the DNS. The list may include IKA (Internet Keyword Addressing), IDN (Internationalized Domain Name), new gTLD, HIP (Host Identity Protocol), PeerNet, URN (Uniform Resource Names) and INS (International Naming System). The second group is from IETF where there is a
long list of RFC amendments for the DNS. More or less, they have matured the DNS in some way or bring new features to it. However, the DNS still has a few issues which hold back the progress of Internet to a certain extent.
This paper proposes a new method to rebuild the DNS with NatureDNS. Natu reDNS comes from “express domain names in natural languages”. It consists of two parts: the design of domain name, and the system of its registration and resolving.
It designates a pattern of “-xxxx” as the new domain name syntax where a domain name must start with a hyphen and except that any other real-meaningful character is allowed in composing a domain name.
NatureDNS employs a similar mechanical lookup system like the DNS where a hyphen root answers all DNS queries and distributes the queries to a hierarchical system to look for the IP addresses mapping with the domain names. It may likely solve most of the DNS issues discussed above.
Furthermore, this paper also introduces a route to deploy NatureDNS with the DNS running in parallel mode. Following the three-step method described in this paper, the DNS could migrate into NatureDNS gradually and smoothly.
The Institute of People Daily Online is a newly-created researching unit in People Daily Online. The Institute is young but it has a luxury academic advisory team which consists of Prof. Wu Jianping from Tsinghua University, Prof. Fang Binxing from Beijing University of Posts and Telecommunications, Prof. Liu Runjie, Fellow of China Academy of Engineering and some other distinguishing experts and scholars.
,10
計算機應(yīng)用與軟件
--修改說明—
感謝評審專家對本論文給予了綜合好評和一個不錯的評分,因此才有現(xiàn)在修改和發(fā)表的機會。
本論文在CNCC2012征文活動中收到的專家評審意見為:“評語_1:論文提出了一種基于自然語言的域名解析系統(tǒng),研究很有新意,提出的方案也有一定的可行性。 存在的主要問題是沒有進行細(xì)致的性能方面的評估來體現(xiàn)大規(guī)模部署后方案的實際可用性?!?/p>
收到評審意見后,我們認(rèn)真分析了論文中所提議的設(shè)計方案,反復(fù)就專家意見中提到的性能方面的評估問題進行討論,并征詢?nèi)嗣窬W(wǎng)研究院的其他同事和領(lǐng)導(dǎo)對此方案性能方面的看法。由于DNS 服務(wù)是一項系統(tǒng)工程,無法在較短時間內(nèi)在較封閉的空間以相對低廉的成本構(gòu)建出來,因此通過實驗環(huán)節(jié)來驗證和回答專家的疑問暫時不具有可行性。
于是,我們將思路調(diào)整到理論推演上來論證NatureDNS 與現(xiàn)行DNS 在實際運行中中可能遇到的性能問題會有哪些?兩者兩比會有哪些異同。從這一角度出發(fā),經(jīng)過分析對比,發(fā)現(xiàn)NatureDNS 運行時的性能問題較小,不會對方案的推行構(gòu)成障礙。
有鑒于此,我們在修改論文的時候增加了一個節(jié)關(guān)于性能問題進行評估的闡述,詳細(xì)內(nèi)容在3.1.(4)“分析比較與評估”。其主要觀點認(rèn)為,與現(xiàn)行DNS 系統(tǒng)相比,NatureDNS 增加了在客戶端對字符串進行Punycode 轉(zhuǎn)碼,在服務(wù)器端多增加一列存儲,這兩個方面不會對實際運行的DNS 輪詢環(huán)節(jié)產(chǎn)生影響。
請再審閱,謝謝。