當(dāng)前位置:首頁 > 通信技術(shù) > 通信技術(shù)
[導(dǎo)讀]引 言 WDTU是一種實現(xiàn)無線數(shù)據(jù)傳輸?shù)慕K端設(shè)備,目前在工業(yè)控制、監(jiān)控、安保等領(lǐng)域應(yīng)用廣泛。現(xiàn)有的WDTU實現(xiàn)了將采集到的數(shù)據(jù)通過GPRS/CDMA網(wǎng)絡(luò)接入到Internet,最終將數(shù)據(jù)傳送到以太網(wǎng)內(nèi)的數(shù)據(jù)中心。但是對數(shù)據(jù)

引 言
    WDTU是一種實現(xiàn)無線數(shù)據(jù)傳輸?shù)慕K端設(shè)備,目前在工業(yè)控制、監(jiān)控、安保等領(lǐng)域應(yīng)用廣泛?,F(xiàn)有的WDTU實現(xiàn)了將采集到的數(shù)據(jù)通過GPRS/CDMA網(wǎng)絡(luò)接入到Internet,最終將數(shù)據(jù)傳送到以太網(wǎng)內(nèi)的數(shù)據(jù)中心。但是對數(shù)據(jù)中心有特別的要求:該數(shù)據(jù)中心必須具有公網(wǎng)的IP或是被上一級路由器/交換機映射成具有特定的端口。這使該設(shè)備的適用要求提高,降低了產(chǎn)品的適用范圍。為了提高產(chǎn)品的實用性,更加方便用戶使用,筆者在原有系統(tǒng)上,利用ASIX OS豐富的協(xié)議資源,對當(dāng)中的DNS協(xié)議部分作適當(dāng)?shù)囊浦埠托薷?,基于ASIX OS設(shè)計和添加了DNS功能。本文將重點介紹DNS實現(xiàn)的相關(guān)內(nèi)容,其他部分只作簡單說明。

1 背景知識
    WDTU系統(tǒng)主要有處理器、串口、電源、無線模塊、以太網(wǎng)口等組成。以太網(wǎng)口是為了功能擴展的需要而設(shè)置的,便于接入以太網(wǎng)。在本設(shè)計中只簡單說明以太網(wǎng) DNS,目的是為了與無線設(shè)備的DNS功能相區(qū)別。本設(shè)計重點討論無線DNS功能的實現(xiàn)。系統(tǒng)的硬件結(jié)構(gòu)如圖1所示。

    UART2是數(shù)據(jù)接收端口,與外設(shè)數(shù)據(jù)源設(shè)備相連。而UART1是作為無線模塊的接口,與無線模塊的子板相連。系統(tǒng)的工作原理是:系統(tǒng)上電啟動以后,使用 PPP協(xié)議撥號上線,與運營商服務(wù)中心建立連接,然后服務(wù)中心的網(wǎng)關(guān)連接到指定IP或域名的數(shù)據(jù)中心主機上,此時就可以實現(xiàn)UART 2與以太網(wǎng)上的數(shù)據(jù)中心的數(shù)據(jù)傳輸。ASIX OS是基于μITRON3.0,為16/32位Garfield微處理器家族開發(fā)的實時操作系統(tǒng)。它包含了豐富的操作系統(tǒng)內(nèi)核和協(xié)議簇的多種API,能滿足用戶基本的網(wǎng)絡(luò)應(yīng)用需求。

2 DNS功能的設(shè)計方案
    DNS(Domain Name Server)用于實現(xiàn)Internet上IP地址與域名的一一對應(yīng)。域名使用方便,而計算機內(nèi)部只處理IP地址,所以必須由域名服務(wù)器來進行兩者的轉(zhuǎn)換,這一過程就稱為域名解析。本設(shè)計中使用的是花生殼(Peanut Hull)的一款完全免費的客戶端軟件,它提供了桌面域名管理和動態(tài)域名解析的功能。首先在花生殼網(wǎng)站上注冊域名,然后在主機上運行該客戶端軟件,這樣就將用戶注冊的域名與該主機的IP地址綁定,形成映射。該軟件實現(xiàn)了特定的域名與變化的主機IP地址間的實時映射,為網(wǎng)外設(shè)備方便地訪問該主機提供了可能。
    由DNS協(xié)議的要求知道:一個域名服務(wù)器負責(zé)一個或多個區(qū)域,而每個區(qū)域的管理者必須為該區(qū)域提供一個主域名服務(wù)器和至少一個從域名服務(wù)器,且兩者必須是獨立和冗余的。在實際使用中,由于受條件、實用性、成本等的限制,不使用主、從服務(wù)器。如果直接接入以太網(wǎng),則沒有可用的DNS服務(wù)器,那么就使得第一級的域名解析不能進行,從而使最終的域名解析失敗。而本設(shè)計是基于無線網(wǎng)絡(luò)的,網(wǎng)絡(luò)接口層是通過串行通信協(xié)議:PPP(點對點協(xié)議)接入運營商的服務(wù)中心,再接入互聯(lián)網(wǎng)。
    PPP協(xié)議本身分為3個子協(xié)議:LCP(Link ControlProtocol)、NCP(Net Control Protocol)、PPP擴展協(xié)議(用于身份驗證),而與網(wǎng)絡(luò)設(shè)置相關(guān)的主要是NCP協(xié)議。NCP協(xié)議用于終端設(shè)備連接到運營商的中心服務(wù)器,若終端設(shè)置了固定的有效IP,則終端將設(shè)定的IP封裝在配置請求數(shù)據(jù)包里,告知運營商端的服務(wù)器,建立連接;否則將IP設(shè)為全0,則服務(wù)器端隨機為WDTU終端設(shè)備分配一個動態(tài)IP,該IP每次復(fù)位后將改變。NCP的一個獨特之處是,它可以向服務(wù)器申請動態(tài)分配DNS服務(wù)器。由于沒有人工添加DNS解析的服務(wù)器,所以正是利用NCP的該功能,獲得實現(xiàn)DNS功能必需的DNS解析服務(wù)器。這也正是本設(shè)計的一大特點。

3 DNS功能的實現(xiàn)
3.1 必要的初始化
    系統(tǒng)首先要完成一系列必要的初始化,包括協(xié)議棧和設(shè)備的初始化。對DNS的初始化主要包括:一,創(chuàng)建DNS服務(wù)器鏈表(服務(wù)器鏈表的大小可以根據(jù)實際需要開辟,本設(shè)計中使用5個),此時該鏈表是空的;二,創(chuàng)建DNS主機緩存,可以將一些常用的域名與IP映射信息存放在緩存中,供終端設(shè)備直接查找。
    當(dāng)完成上述的初始化以后,接下來進行PPP撥號,向運營商的服務(wù)中心發(fā)送LCP、NCP連接配置請求的數(shù)據(jù)包。其中NCP向服務(wù)中心發(fā)送請求分配DNS解析服務(wù)器的配置請求數(shù)據(jù)包,根據(jù)NCP的幀格式進行封裝。代碼實現(xiàn)的流程如圖2所示。

3.2 域名解析的實現(xiàn)
    最終WDTU連接到登錄花生殼客戶端的主機,與之實現(xiàn)數(shù)據(jù)傳輸?;ㄉ鷼た蛻舳藭⒌卿浿鳈C的IP與申請的該域名的映射信息返回給花生殼公司的DNS服務(wù)器。而運營商與這些提供域名解析服務(wù)的公司之間建立聯(lián)系,提供DNS服務(wù)的公司通過直接或間接的連接,將本公司的DNS服務(wù)器域名信息系統(tǒng)與運營商的服務(wù)中心相連接,這樣,運營商就使得移動終端實現(xiàn)了域名的解析。DNS功能有多種類型,但主要的是兩種:由域名得到IP地址和根據(jù)IP地址得到相映射的域名。實際應(yīng)用中主要是需要根據(jù)域名查找到與之相對應(yīng)的IP地址。因此,本設(shè)計也是針對這種類型介紹的。
    該過程分為兩個階段:查找終端的緩存,如果終端本身的緩存中已經(jīng)有該域名的信息,則該過程完成,不需要后續(xù)的操作;若沒有該域名的信息,則需要進一步向上一級的DNS解析服務(wù)器查詢該域名的信息,即DNS解析(resolve)。域名解析的核心正是在于向上一級的DNS解析器發(fā)出解析請求,解析器得到相匹配的IP以后,返回給終端設(shè)備,從而整個過程完成。由DNS協(xié)議的特點可知,為了方便后續(xù)域名查詢,提高后續(xù)的域名解析的效率,該協(xié)議規(guī)定,將新解析到的映射信息加入到高速緩存中。下列部分代碼說明了。DNS解析的過程:


    DNS解析的功能是向上一級的DNS服務(wù)器(運營商服務(wù)中心動態(tài)分配的DNS服務(wù)器)發(fā)出請求,令其幫助查找該域名的映射信息。在DNS協(xié)議里,查詢信息的方法有兩種:遞歸查詢和迭代查詢。大多數(shù)情況下,為了使用上的方便,默認的都是遞歸查詢。這樣對于運營商的DNS服務(wù)器而言,其解析域名的過程跟 WDTU終端查詢域名的方法相同:先查詢服務(wù)器自身的緩存,若查到則過程完成,否則再向服務(wù)器的上一級DNS服務(wù)器查詢域名信息。而花生殼公司的服務(wù)器地址會直接或間接地存放在運營商的服務(wù)器鏈表中(這一部分由運營商和花生殼公司合作實現(xiàn)),從而可以從花生殼公司的服務(wù)器數(shù)據(jù)系統(tǒng)中得到該域名的映射IP。運營商的DNS服務(wù)器得到花生殼返回的數(shù)據(jù)包以后,過程完成。最后再從運營商動態(tài)分配的DNS服務(wù)器返回的DNS應(yīng)答數(shù)據(jù)包中提取IP地址信息。DNS系統(tǒng)整體的工作原理如圖3所示。

結(jié) 語
    由于工業(yè)對于借助無線網(wǎng)絡(luò)實現(xiàn)遠距離數(shù)據(jù)傳輸?shù)囊蠛蛻?yīng)用越來越多,而傳統(tǒng)的數(shù)據(jù)傳輸必須有固定的公網(wǎng)IP,這使得成本要求較高,限制了產(chǎn)品的使用范圍。本設(shè)計的創(chuàng)新點在于,使WDTU無線終端實現(xiàn)了DNS功能,這樣任意一臺主機都可作為“具有公網(wǎng)IP”的傳統(tǒng)數(shù)據(jù)中心主機使用,使產(chǎn)品的應(yīng)用成本降低,對于提高產(chǎn)品的整體功能,促進產(chǎn)品的推廣具有重要的現(xiàn)實意義。

本站聲明: 本文章由作者或相關(guān)機構(gòu)授權(quán)發(fā)布,目的在于傳遞更多信息,并不代表本站贊同其觀點,本站亦不保證或承諾內(nèi)容真實性等。需要轉(zhuǎn)載請聯(lián)系該專欄作者,如若文章內(nèi)容侵犯您的權(quán)益,請及時聯(lián)系本站刪除。
換一批
延伸閱讀

9月2日消息,不造車的華為或?qū)⒋呱龈蟮莫毥谦F公司,隨著阿維塔和賽力斯的入局,華為引望愈發(fā)顯得引人矚目。

關(guān)鍵字: 阿維塔 塞力斯 華為

加利福尼亞州圣克拉拉縣2024年8月30日 /美通社/ -- 數(shù)字化轉(zhuǎn)型技術(shù)解決方案公司Trianz今天宣布,該公司與Amazon Web Services (AWS)簽訂了...

關(guān)鍵字: AWS AN BSP 數(shù)字化

倫敦2024年8月29日 /美通社/ -- 英國汽車技術(shù)公司SODA.Auto推出其旗艦產(chǎn)品SODA V,這是全球首款涵蓋汽車工程師從創(chuàng)意到認證的所有需求的工具,可用于創(chuàng)建軟件定義汽車。 SODA V工具的開發(fā)耗時1.5...

關(guān)鍵字: 汽車 人工智能 智能驅(qū)動 BSP

北京2024年8月28日 /美通社/ -- 越來越多用戶希望企業(yè)業(yè)務(wù)能7×24不間斷運行,同時企業(yè)卻面臨越來越多業(yè)務(wù)中斷的風(fēng)險,如企業(yè)系統(tǒng)復(fù)雜性的增加,頻繁的功能更新和發(fā)布等。如何確保業(yè)務(wù)連續(xù)性,提升韌性,成...

關(guān)鍵字: 亞馬遜 解密 控制平面 BSP

8月30日消息,據(jù)媒體報道,騰訊和網(wǎng)易近期正在縮減他們對日本游戲市場的投資。

關(guān)鍵字: 騰訊 編碼器 CPU

8月28日消息,今天上午,2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會開幕式在貴陽舉行,華為董事、質(zhì)量流程IT總裁陶景文發(fā)表了演講。

關(guān)鍵字: 華為 12nm EDA 半導(dǎo)體

8月28日消息,在2024中國國際大數(shù)據(jù)產(chǎn)業(yè)博覽會上,華為常務(wù)董事、華為云CEO張平安發(fā)表演講稱,數(shù)字世界的話語權(quán)最終是由生態(tài)的繁榮決定的。

關(guān)鍵字: 華為 12nm 手機 衛(wèi)星通信

要點: 有效應(yīng)對環(huán)境變化,經(jīng)營業(yè)績穩(wěn)中有升 落實提質(zhì)增效舉措,毛利潤率延續(xù)升勢 戰(zhàn)略布局成效顯著,戰(zhàn)新業(yè)務(wù)引領(lǐng)增長 以科技創(chuàng)新為引領(lǐng),提升企業(yè)核心競爭力 堅持高質(zhì)量發(fā)展策略,塑強核心競爭優(yōu)勢...

關(guān)鍵字: 通信 BSP 電信運營商 數(shù)字經(jīng)濟

北京2024年8月27日 /美通社/ -- 8月21日,由中央廣播電視總臺與中國電影電視技術(shù)學(xué)會聯(lián)合牽頭組建的NVI技術(shù)創(chuàng)新聯(lián)盟在BIRTV2024超高清全產(chǎn)業(yè)鏈發(fā)展研討會上宣布正式成立。 活動現(xiàn)場 NVI技術(shù)創(chuàng)新聯(lián)...

關(guān)鍵字: VI 傳輸協(xié)議 音頻 BSP

北京2024年8月27日 /美通社/ -- 在8月23日舉辦的2024年長三角生態(tài)綠色一體化發(fā)展示范區(qū)聯(lián)合招商會上,軟通動力信息技術(shù)(集團)股份有限公司(以下簡稱"軟通動力")與長三角投資(上海)有限...

關(guān)鍵字: BSP 信息技術(shù)
關(guān)閉
關(guān)閉