專利名稱:用于搶占式dns解析的系統(tǒng)和方法
技術領域:
本公開總體上涉及通信網(wǎng)絡領域,更具體地涉及通過搶占式(preemptive) DNS解析進行應用加速的系統(tǒng)和方法。
背景技術:
無線通信系統(tǒng)也稱為無線電接入網(wǎng)(RAN),為移動設備用戶提供對高速大帶寬核心IP網(wǎng)的無線接入。這些無線通信系統(tǒng)可以是能夠通過共享可用系統(tǒng)資源(例如帶寬和發(fā)射功率)來支持與多個移動設備進行通信的多址系統(tǒng)。這種多址系統(tǒng)的實例包括碼分多址(CDMA)系統(tǒng)、時分多址(TDMA)系統(tǒng)、頻分多址(FDMA)系統(tǒng)、正交頻分多址(OFDMA)系統(tǒng),包括WCDMA、HSPA和HSUPA的通用移動通信系統(tǒng)(UMTS),3GPP長期演進(LTE)系統(tǒng)和其它類型的無線通信系統(tǒng)。通常,IP網(wǎng)上的通信需要通信設備將計算機、服務器或其它網(wǎng)絡設備的主機名和域名解析成相關聯(lián)的IP地址,然后才能與這些設備建立連接。域名系統(tǒng)(DNS)服務器執(zhí)行主機名解析服務。對于物理連接到核心IP網(wǎng)的設備而言,主機名解析是一般由因特網(wǎng)服務提供商(ISP)主持(host)的DNS服務器執(zhí)行的較為快速和無縫的過程。然而,對于通過無線電接入網(wǎng)連接到IP網(wǎng)的移動設備,主機名解析會增加顯著的通信延遲,其原因是帶寬小,無線電鏈路傳播等待時間長,分組差錯率高導致數(shù)據(jù)重傳,以及歸因于無線通信環(huán)境的其它因素。因此,需要改善無線通信系統(tǒng)中的DNS解析流程。
發(fā)明內(nèi)容
下面給出了在無線通信環(huán)境中通過搶占式DNS解析進行應用加速的機制的ー個或多個方面的簡化摘要。該摘要不是所想到的所有方面的全面概述,既不是要確定本發(fā)明的重要或關鍵要素也不是要描繪其任何或所有方面的范圍。其唯一目的是以ー種簡化形式提供ー個或多個方面的ー些概念,作為稍后下文給出的更詳細說明的前序。這里公開的是用于搶占式DNS解析的系統(tǒng)、方法和計算機程序產(chǎn)品的各個方面。該系統(tǒng)可以包括在無線電接入網(wǎng)(RAN)和核心IP網(wǎng)之間提供的DNS代理設備,用于為去往和來自連接到RAN的移動設備的通信提供搶占式域名解析。在ー個方面中,DNS代理可以由IP接入網(wǎng)關,例如I3DSN網(wǎng)關,主持。因為其直接物理連接到核心IP網(wǎng),所以與移動設備相比,DNS代理設備到IP網(wǎng)的DNS服務器的接入時間要快得多。這使得DNS代理能夠在向移動設備提供通信中的主機名和域名轉換方面幫助移動設備,由此加快移動設備上運行的各種應用的操作。在ー個方面中,DNS代理檢查在第一通信鏈路上向移動設備發(fā)送的數(shù)據(jù)分組。該代理識別被檢查的數(shù)據(jù)分組中嵌入的ー個或多個主機設備名并解析與這ー個或多個嵌入的主機設備名相關聯(lián)的IP地址。該代理設備在第二通信鏈路上向移動設備發(fā)送未加改變 的這些被檢查的數(shù)據(jù)分組。與第一通信鏈路相比,第二通信鏈路可能具有更長的傳播等待時間。該代理然后獨立于被檢查的數(shù)據(jù)分組,向所述移動設備發(fā)送所述ー個或多個主機設備名和相關聯(lián)的解析出來的IP地址,供所述客戶機設備用于建立到被檢查的數(shù)據(jù)分組中標識的主機設備的連接。通過這種方式,在移動設備需要接入被檢查的數(shù)據(jù)分組中標識的主機設備吋,已經(jīng)有了主機設備的IP地址,移動設備無需在第二通信鏈路上重復IP地址解析過程。為了實現(xiàn)以上和相關目的,這ー個或多個方面包括下文充分描述并在權利要求中特別指出的特征。以下描述和附圖詳細闡述了這ー個或多個方面的某些示例性特征。不過,這些特征僅僅表示可以采用各方面原理的多種方式中的ー些,本說明書意在包括所有這樣的方面及其等價要件。
在下文中將結合附圖描述本發(fā)明公開的各方面,提供附圖是為了例示而非限制所公開的方面,其中類似標號表示類似要素,并且其中圖I說明利用這里公開的搶占式DNS解析機制各方面的無線通信系統(tǒng)。圖2說明用于搶占式DNS解析的實例方法。圖3說明用于搶占式DNS解析的另ー實例方法。圖4說明實施這里公開的搶占式DNS解析機制各方面的實例DNS代理。圖5說明實施這里公開的搶占式DNS解析機制各方面的實例系統(tǒng)。圖6說明利用這里公開的搶占式DNS解析機制各方面的實例無線通信系統(tǒng)。
具體實施例方式現(xiàn)在參考附圖描述無線通信環(huán)境中用于搶占式DNS解析的方法的各方面。不過應當指出,用于搶占式DNS解析的方法不限于無線通信環(huán)境,而是可以用于以客戶機設備和廣域IP網(wǎng)之間傳播延遲長為特征并且搶占式DNS解析能夠使客戶機設備上運行的應用加快操作的任何通信網(wǎng)絡中。進ー步應當指出,盡管“主機名”和“域名”這些術語之間存在細微的技術差異,但在這里以能夠互換的方式使用這些術語。在下述說明中,出于解釋的目的,闡述了很多具體的細節(jié),以提供對ー個或多個方面的透徹的理解。不過顯然可以無需這些具體細節(jié)來實踐這種方面。如本公開中使用的,術語“部件”、“模塊”、“系統(tǒng)”等意在包括與計算機相關的實體,例如,但不限于,硬件、固件,硬件和軟件的組合,軟件或執(zhí)行中軟件。例如,部件可以是,但不限于是,處理器上運行的過程,處理器、對象、可執(zhí)行對象、執(zhí)行的線程、程序和/或計算機。作為例示,運行于計算設備上的應用和計算設備都可以是部件。一個或多個部件可以位于過程和/或執(zhí)行的線程之內(nèi),部件可以局限在一個計算機上和/或分布于兩個或更多計算機中。此外,這些部件可以從其上存儲有各種數(shù)據(jù)結構的各種計算機可讀介質執(zhí)行。這些部件可以借助本地和/或遠程進程通過信號與其它系統(tǒng)進行通信,例如根據(jù)有著ー個或多個數(shù)據(jù)分組的這個信號,比如來自在本地系統(tǒng)、分布式系統(tǒng)中和/或跨網(wǎng)絡(諸如因特網(wǎng)或其它類型的分組交換網(wǎng))與另一部件交互的一個部件的數(shù)據(jù)。此外,可以使用標準編程和/或工程技術將這里描述的用于搶占式DNS解析的方法的各個方面或特征實現(xiàn)為方法、裝置或制品。如同這里使用的一祥,術語“制品”意圖包含可從任何計算機可讀設備、載體或介質訪問的計算機程序。例如,計算機可讀介質可以包括但不限于磁存儲設備(例如硬盤、軟盤、磁條等)、光盤(例如壓縮盤(CD)、數(shù)字多功能盤(DVD)等)、智能卡和快閃存儲器設備(例如EPROM、卡、棒、鍵驅動器(key drive)等)。此夕卜,這里所述的各種存儲介質可以表示用于存儲信息的一種或多種設備和/或其它機器可讀介質。術語“機器可讀介質”可以包括但不限于無線信道和能夠存儲、包含和/或運載(carry)指令和/或數(shù)據(jù)的各種其它介質。將根據(jù)可以包括多個移動設備、部件、模塊等的系統(tǒng)介紹無線通信環(huán)境中用于搶占式DNS解析的方法的各方面或特征。要理解和認識到,各個系統(tǒng)可以包括額外的設備、部件、模塊等和/或可以不包括結合附圖論述的所有設備、部件、模塊等。也可以使用這些方式的組合。圖I示出了無線通信系統(tǒng)的ー個方面,這個無線通信系 統(tǒng)包括ー個或多個移動設備105,ー個或多個無線電接入網(wǎng)(RAN) 110,象因特網(wǎng)這種核心IP網(wǎng)140,ー個或多個DNS服務器150,以及各種內(nèi)容和應用服務器160,例如網(wǎng)絡服務器、文件服務器、郵件服務器、多媒體服務器等。在ー個方面中,移動設備105可以是蜂窩電話、無繩電話、會話發(fā)起協(xié)議(SIP)電話、個人數(shù)字助理(PDA),具有無線連接能力的手持設備,膝上型計算機或連接到無線調(diào)制調(diào)解器的其它處理設備。移動設備105可以是能夠接入幾種不同無線電接入網(wǎng)110的多模式通信設備。移動設備105可以支持數(shù)據(jù)、語音和視頻服務,包括寬帶因特網(wǎng)服務,例如網(wǎng)絡瀏覽、IP語音(VoIP)、IP-TV、多媒體流傳輸、文件下載和其它類型的服務。也可以將設備105稱為用戶単元、用戶站、移動站、移動設備、遠程站、遠程終端、接入終端、用戶終端、終端、無線通信設備、用戶代理、用戶裝置或用戶設備(UE)。在ー個方面中,無線電接入網(wǎng)110可以包括但不限于CDMA、TDMA、FDMA、OFDMA,SC-FDMA, TD-SCDMA和其它無線通信系統(tǒng)。在這里以能夠互換的方式使用術語“系統(tǒng)”和“網(wǎng)絡”。CDMA系統(tǒng)可以實施諸如通用陸地無線電接入網(wǎng)(UTRAN)、cdma2000等無線電技術。UTRAN 包括寬帶 CDMA (W-CDMA)和 CDMA 的其它變體。此外,cdma2000 覆蓋 IS-2000、IS-95和IS-856標準。TDMA系統(tǒng)可以實施諸如全球移動通信系統(tǒng)(GSM)的無線電技術。OFDMA系統(tǒng)可以實施諸如演進的UTRAN (Ε-UTRAN)、超移動寬帶(UMB)、IEEE 802.11 (Wi-Fi )、IEEE802. 16(WiMAX)、IEEE 802. 20、快閃-OFDM等無線電技術。UTRAN和E-UTRAN是通用移動通信體系(UMTS)的一部分。3GPP長期演進(LTE)是使用E-UTRAN的UMTS版本,它在下行鏈路上采用0FDMA,在上行鏈路上采用SC-FDMA。在來自名為“第三代合作伙伴計劃”(3GPP)的組織的文獻中描述了 UTRAN、E-UTRAN、UMTS、LTE和GSM。此外,在來自名為“第三代合作伙伴計劃2”(3GPP2)的文獻中描述了 cdma2000和UMB。此外,這種無線通信系統(tǒng)可以額外包括常常使用未配對未許可頻譜的對等(例如移動到移動)自組織(ad hoc)網(wǎng)絡系統(tǒng),802.XX無線LAN,藍牙和任何其它短距離或長距離無線通信技木。通常,RAN 110為移動設備105提供對分組交換核心網(wǎng)140,例如因特網(wǎng)的無線電接入。在ー個方面中,RAN 110可以包括一個或多個無線電基站150,無線電基站150具有多個天線組和/或發(fā)射機/接收機鏈,天線組和/或發(fā)射機/接收機鏈又可以包括與向移動設備105發(fā)射和從移動設備105接收無線電信號相關聯(lián)的多個部件(例如,處理器、調(diào)制器、復用器、天線等(未示出))。RAN 110還包括RAN控制器120,RAN控制器120提供移動設備105和IP接入網(wǎng)關125之間的數(shù)據(jù)連接??刂破?20的主要功能包括建立、維持和終止無線電鏈路流、無線電資源管理和移動性管理。無線電鏈路流可以包括但不限于無線電鏈路協(xié)議(RLP)流和無線電鏈路控制(RLC)流。每個無線電鏈路流可以包括由運行于移動設備105上的應用產(chǎn)生的多個IP數(shù)據(jù)流。對于每個無線電鏈路流,控制器120創(chuàng)建A10/A11承載(bearer)連接以運載從設備105到網(wǎng)關125的數(shù)據(jù)分組。IP接入網(wǎng)關125,也稱為介質接入網(wǎng)關(MAG),是連接RAN 110和IP網(wǎng)140的服務器或路由器。在ー個方面中,網(wǎng)關125可以被實現(xiàn)為分組數(shù)據(jù)服務節(jié)點(PDSN)。通常,網(wǎng)關1125負責跟蹤移動設備朝向和背離RAN 110的移動,匯聚來自RAN控制器120的數(shù)據(jù)業(yè)務并提供到服務器160的接入。如果RAN 110支持代理移動IPv6 (PMIP)協(xié)議,網(wǎng)關125還可以起到代理中介(proxy agent)的作用,用于朝向/來自移動設備105和服務160的移動IPv4和IPv6分組傳輸,信令和數(shù)據(jù)發(fā)射/接收。為了在移動設備105和服務160之間傳輸數(shù)據(jù),網(wǎng)關140創(chuàng)建雙向IP隧道并將來自控制器120的A10/A11承載連接運載的多個無線電鏈路流關聯(lián)到所創(chuàng)建的IP隧道。在網(wǎng)關125從移動設備105接收數(shù)據(jù)分組時,它識別出分組所尋址的(addressed)服務器160以及關聯(lián)的IP隧道;然后將接收到的分組封裝在新的IP分組中并通過適當?shù)腎P隧道發(fā)送給服務器160。在通過IP隧道從服務器160收到數(shù)據(jù)分組吋,IP接入網(wǎng)關125對其解封裝,識別出適當?shù)臒o線電鏈路流和分組所尋址的移動設備105,井向移動設備105轉發(fā)數(shù)據(jù)。如上所述,IP網(wǎng)140上的通信需要移動設備105將計算機、服務器或其它網(wǎng)絡設備160的主機名和域名解析成相關聯(lián)的IP地址,然后才能與這些設備建立起連接。為了這一目的,運行于移動設備105上的網(wǎng)絡瀏覽器或其它應用可以包括DNS解析器部件(未示出),在應用請求連接到主機設備吋,DNS解析器部件嘗試利用主機設備名解析主機設備的IP地址。例如,網(wǎng)絡服務器160A的主機名可以是Webserver, qualcomm. com,對應的IP地址可以是208. 77. 188. 166。為了解析網(wǎng)絡服務器160A的IP地址,DNS解析器首先搜索它自己的高速緩存,判斷所請求的IP地址是否已經(jīng)被轉換并存儲在高速緩存中。如果所請求的IP地址不在高速緩存中,DNS解析器就查詢由RAN 110主持的本地DNS服務器(未示出)或各種遠程DNS服務器150,直到這些DNS服務器向DNS解析器提供這個主機設備的IP地址信 息為止。一旦解析了網(wǎng)絡服務器160A的IP地址,移動設備105就可以建立通過RAN 110和IP網(wǎng)140到網(wǎng)絡服務器160A的IP流。作為響應,網(wǎng)絡服務器160可以向移動設備105發(fā)送HTML文檔,其中可以包含多個嵌入的域名或主機名或通往IP網(wǎng)140上其它資源的鏈接。例如,HTML文檔可以包含文件服務器160B的主機名,文件服務器160B存儲HTML文檔中嵌入的各種圖像。對于每個嵌入的主機名或域名,移動設備105必須重復DNS解析過程,以便取回(retrieve)由嵌入的主機或域名標識的資源。對于物理連接到IP網(wǎng)140的設備,DNS解析過程相對快速,因為在這些設備連接到的高速大帶寬核心IP網(wǎng)140上的傳播延遲短。例如,網(wǎng)絡140可能是吉比特以太網(wǎng)、光學廣域網(wǎng)(WAN)或其它高速網(wǎng)絡。然而,對于通過RAN 110連接到網(wǎng)絡140的移動設備105,因為無線電鏈路傳播等待時間長,分組差錯率高導致的數(shù)據(jù)重傳,以及歸因于RAN的其它因素,DNS解析過程會增加顯著的通信延遲。為了針對連接到RAN 110的移動設備105加快DNS解析過程,可以在RAN 110和核心IP網(wǎng)140的邊界處提供執(zhí)行搶占式DNS解析的DNS代理130。在ー個方面中,DNS代理130可以被實現(xiàn)為IP接入網(wǎng)關125的軟件部件。在另ー個方面中,代理130可以被實現(xiàn)為RAN 110的本地DNS服務器的軟件部件。在另一方面中,代理130可以被實現(xiàn)為連接到RAN控制器120或IP接入網(wǎng)關125的獨立設備。應當指出,還可以將DNS代理用于無線局域網(wǎng)(WLAN)(例如IEEE 802. 11標準中描述的網(wǎng)絡)中,以向連接到WLAN的無線設備提供搶占式DNS解析。在這一方面中,可以將DNS代理實現(xiàn)為將WLAN連接到有線IP網(wǎng)的無線接入點(AP)的軟件部件。還可以將DNS代理用于有線LAN (例如以太網(wǎng))中。在這一方面中,可以將DNS代理實現(xiàn)為網(wǎng)絡路由器、網(wǎng)橋、集線器或者將LAN與WAN連接的其它路由設備的軟件部件。為了提供有效的搶占式DNS解析服務,DNS代理130可以充當網(wǎng)絡代理,檢查從IP網(wǎng)140向ー個或多個移動設備105發(fā)送的HTTP業(yè)務,看是否存在嵌入的域名和主機名。換言之,盡管從邏輯上講,DNS代理執(zhí)行應用層(0SI模型)處理,但實際的處理可以在IP層上逐個分組地完成(即,使得傳輸,TCP,以端到端的方式工作)。例如,HTTP允許壓縮消息主 體,因此在壓縮數(shù)據(jù)流中不能直接看到域名。與傳統(tǒng)DNS代理對所截獲的分組的數(shù)據(jù)有效載荷解壓,找到并重寫域名并重新壓縮數(shù)據(jù)有效載荷不同。DNS代理130可以識別壓縮數(shù)據(jù)并且無延遲或變化地將數(shù)據(jù)分組傳遞到移動設備105,保持TCP傳輸是端到端的,但同時可以對數(shù)據(jù)分組解壓以識別其中嵌入的主機名和域名。通過這種方式,在IP層未加改變地轉發(fā)數(shù)據(jù)流,并對這個數(shù)據(jù)流的拷貝執(zhí)行搶占式DNS解析(在應用層處理)。如上所述,在分組檢查過程期間,DNS代理130識別嵌入的主機名和域名。在ー個方面中,DNS代理103可以使用串模式匹配技術識別嵌入的主機名和域名。通常,主機名和域名是被“.”分隔的由[a-z]、
和〃-〃范圍內(nèi)的ASCII字符序列構成的串。此外,域名常常以“· com,,、“· org”、“. edu”或其它域標識符結束,并且可能包含“http”、“ftp”、“xml”或其它協(xié)議標識符。在協(xié)議消息中(甚至在ニ進制協(xié)議中),常常不進行任何編碼來傳輸這些消息作為與字節(jié)界對齊的ASCII串。在這些假設之下,DNS代理130能夠通過對IP分組的ニ進制有效載荷逐個八位位組地進行分析,將每個八位位組解釋成ASCII字符并查找與主機名或域名字符模式匹配的ASCII字符串,來檢測嵌入的主機名和域名。在或者因為DNS代理不理解應用層協(xié)議(例如HTTP),或者因為沒有將它編程為這樣做,使得業(yè)務性質未知的情況下,DNS代理仍然能夠逐個分組地檢查IP層(0SI模型中的網(wǎng)絡層)的業(yè)務,并利用上述串模式匹配技術對主機名檢測做出有根據(jù)的猜測。可以在TCP層(針對TCP業(yè)務)執(zhí)行類似的處理。在這種情況下,DNS代理130會截獲IP分組并將它們與給定的TCP流關聯(lián);重新組裝這個流;并執(zhí)行模式匹配。這種方法能夠識別跨分組邊界的主機名和域名。應當指出,在無線電接入網(wǎng)110的語境中,DNS代理130可以截獲在RANllO的多個前向無線電鏈路流上發(fā)送的IP分組,即從IP網(wǎng)140向移動設備105發(fā)送的分組,并檢查這些分組是否有嵌入的主機名和域名。在被檢查的數(shù)據(jù)分組中識別出ー個或多個嵌入的主機名或域名后,DNS代理130可以試圖將嵌入的主機名或域名轉換成其關聯(lián)的IP地址。例如,DNS代理130可以首先檢查其本地高速緩存,判斷嵌入的主機名的IP地址是否之前已經(jīng)被解析并因此存儲在代理的高速緩存中。如果高速緩存中沒有IP地址,代理130可以利用常規(guī)DNS解析技術查詢RAN 110的本地DNS服務器或各種遠程DNS服務器150。一旦解析了嵌入的主機名的IP地址,代理130就可以在其高速緩存中存儲轉換后的IP地址并將其發(fā)送到帶有嵌入的主機名的數(shù)據(jù)分組所尋址的移動設備105。代理130然后可以利用標準DNS協(xié)議消息或者利用定制的(custonOUDP或XML消息等向移動設備105的DNS解析器部件發(fā)送針對ー個或多個域名或主機名的已轉換IP地址信息。在移動設備105從DNS代理130接收到消息吋,它取回消息中所含的主機名/IP地址信息并將它存儲在它的DNS解析器部件的高速緩存或任何其它存儲位置中。在帶有嵌入的主機名的數(shù)據(jù)分組所尋址的移動設備105上的應用試圖建立到嵌入的主機名標識的網(wǎng)絡設備的連接吋,它激活DNS解析器部件,DNS解析器部件能夠從其高速緩存中迅速取回對應的IP地址并將它們提供給應用。通過這種方式,移動設備105的DNS解析器無需通過無線電接入網(wǎng)110查詢?nèi)魏伪镜睾瓦h程DNS服務器150,這可能是相對耗時的過程,因為無線電鏈路傳播延遲很長,并且由于無線電接入網(wǎng)110上的差錯,可能有很多次數(shù)據(jù)重發(fā)。解析完所接收的數(shù)據(jù)分組中嵌入的主機名標識的網(wǎng)絡設備的IP地址之后,移動設備105能夠利用它們的IP地址建立到這些網(wǎng)絡設備的連接并取回必要的信息。通過DNS代理130提供的搶占式DNS解析,移動設備105上運行的應用的性能能夠顯著加快并且用戶體驗能夠得到相應地改善。圖2示出了 DNS代理進行搶占式DNS解析的一個實例方法。在步驟210,DNS代理,例如代理130,檢查從諸如IP網(wǎng)140的WAN向LAN、WLAN或RAN上的一個或多個客戶機 設備,例如移動設備105,發(fā)送的數(shù)據(jù)分組。如果被檢查分組中的數(shù)據(jù)是被壓縮的,在步驟220,DNS代理可以對壓縮數(shù)據(jù)解壓。在步驟230,DNS代理識別被檢查的數(shù)據(jù)分組中嵌入的主機名(和域名),例如“.com”或“.org”域名。在步驟240,DNS代理可以首先檢查其本地高速緩存,判斷嵌入的主機名的IP地址是否之前已經(jīng)被轉換并存儲在這個代理的高速緩存中。如果在步驟250在高速緩存中發(fā)現(xiàn)了 IP地址,DNS代理在步驟280將其發(fā)送到客戶機設備。如果高速緩存中沒有IP地址,在步驟260,DNS代理利用常規(guī)DNS解析技術查詢本地DNS服務器或各種遠程DNS服務器。一旦解析了嵌入的主機名的IP地址,在步驟270,DNS代理就在其高速緩存中存儲轉換后的IP地址。在步驟280,DNS代理利用標準DNS協(xié)議消息或定制的Μ)Ρ或XML消息或使用其它已知通信技術向客戶機設備發(fā)送主機名和IP地址信息。應當指出,步驟240、250和270是任選的,取決于DNS代理是否具有用于存儲解析出來的IP地址的本地高速緩存。圖3示出了可以在客戶機設備實施的用于搶占式DNS解析的一種實例方法。在步驟310,客戶機設備,例如移動設備105的DNS解析器部件,從DNS代理接收消息。該消息可以是標準DNS協(xié)議消息或定制的UDP或XML消息。在步驟320,客戶機設備從該消息取回主機名和關聯(lián)的IP地址信息。在步驟330,客戶機設備將它存入它的DNS解析器部件的高速緩存或任何其它存儲位置。在客戶機設備上的應用,例如瀏覽器,試圖建立到嵌入的主機名標識的網(wǎng)絡設備的連接時,在步驟340,客戶機設備激活DNS解析器部件,DNS解析器部件在步驟340在其高速緩存中搜索與嵌入的主機名相關聯(lián)的IP地址。如果已經(jīng)借助DNS代理的輔助以搶占式方式解析出IP地址,在步驟350中將在DNS解析器的高速緩存中找到IP地址,然后在步驟380應用能夠迅速建立到主機設備的連接。如果高速緩存中沒有IP地址,在步驟360,DNS解析器利用常規(guī)DNS解析技術查詢本地和遠程DNS服務器。當在步驟370解析出主機設備的IP地址時,應用可以在步驟380建立到主機設備的連接。上述用于搶占式DNS解析的方法能夠加快移動應用的性能并提供其它優(yōu)點。例如,與用于搶占式DNS解析的其它方法不同,本實施方式不會延遲到客戶機設備的數(shù)據(jù)業(yè)務來轉換嵌入的主機設備名并利用解析出來的IP地址在數(shù)據(jù)分組中替換它們。這種搶占式DNS解析與向客戶機設備轉發(fā)數(shù)據(jù)分組異步地進行。這樣在實施中有很大靈活性。此外,所公開的方法未破壞在客戶機設備實施的用于驗證數(shù)據(jù)真實性的技木。此外,公開的實施未引入因打破數(shù)據(jù)完整性而破壞應用功能的風險。最后,這些技術的適用性被拓寬到DNS代理不知道數(shù)據(jù)格式的應用代理能夠針對由什么構成主機名或域名做出“有根據(jù)的猜測(educated guess)”。錯誤的肯定結論不會對應用造成任何嚴重的不利影響。圖4示出了可用于根據(jù)這里公開的方法為連接到局域網(wǎng)或無線電接入網(wǎng)的客戶機設備執(zhí)行搶占式DNS解析的實例DNS代理設備400。DNS代理400包括用于根據(jù)這里公開的方法執(zhí)行與搶占式DNS解析相關的處理功能以及其它功能的處理器410。處理器410可以包括單組或多組處理器或多核處理器。在一個實例方面中,處理器410可以包括分組檢查模塊460,這個分組檢查模塊460實施用于檢查給客戶機設備的數(shù)據(jù)分組的過程。處理器410還可以包括主機名識別模塊470,用于識別被檢查的數(shù)據(jù)分組中的主機名和域名。處理器410還可以包括IP地址解析模塊480,這個IP地址解析模塊480執(zhí)行嵌入的主機名和域名到相關聯(lián)的IP地址的轉換。處理器410還包括發(fā)送模塊490,這個發(fā)送模塊490向客戶機設備發(fā)送解析出來的主機設備名和關聯(lián)的IP地址。
DNS代理400還包括耦合到處理器410的存儲器420,例如用于存儲由處理器410執(zhí)行的搶占式DNS解析程序指令的存儲器420,以及包含以搶占式方式解析出來的主機名和域名以及相關聯(lián)的IP地址的代理高速緩存。存儲器420可以包括可以由計算機使用的任何類型存儲器,例如隨機存取存儲器(RAM)、只讀存儲器(ROM)、磁盤、光盤、易失性存儲器、非易失性存儲器以及它們的任意組合。此外,DNS代理400還可以包括耦合到處理器410的數(shù)據(jù)儲存器430,數(shù)據(jù)儲存器430可以是硬件和/或軟件的任意適當組合,實現(xiàn)結合這里所述各方面采用的信息、數(shù)據(jù)庫和程序的海量存儲。例如,數(shù)據(jù)儲存器430可以是數(shù)據(jù)倉庫(data !■印ository),用于處理器410當前未執(zhí)行的程序或子例程,以及包含用于搶占式DNS解析的算法以及與其相關聯(lián)的各種數(shù)據(jù)的文件。此外,DNS代理400包括耦合到處理器410的通信部件440,如同這里所描述的ー樣,通信部件440用于搜索、建立和維持與客戶機設備以及本地和遠程DNS服務器的通信。例如,通信部件440可以包括分別與發(fā)射機和接收機相關聯(lián)的發(fā)射鏈部件和接收鏈部件,用干與各種無線電接入技術和協(xié)議的無線通信系統(tǒng)和設備對接。數(shù)據(jù)發(fā)送模塊490指示通信部件440向/從ー個或多個客戶機設備以及本地和遠程DNS服務器發(fā)送/接收數(shù)據(jù)。DNS代理400可以包括耦合到處理器410的用戶接ロ部件450,用于從系統(tǒng)管理員接收輸入,并進ー步用于產(chǎn)生輸出以呈現(xiàn)給系統(tǒng)管理員。部件450可以包括ー個或多個輸入設備,包括但不限于鍵盤、數(shù)字小鍵盤、鼠標、觸敏顯示器、導航鍵、功能鍵、麥克風、語音識別部件,能夠從用戶接收輸入的任何其它機構,或者它們的任意組合。此外,部件450可以包括ー個或多個輸出設備,包括但不限于顯示器、揚聲器、觸覺反饋機構、打印機、能夠向用戶呈現(xiàn)輸出的任何其它機構,或者它們的任意組合。圖5示出了可以在DNS代理設備中實施的系統(tǒng)500。如圖所示,系統(tǒng)500包括能夠代表由處理器、軟件或其組合(例如固件)實現(xiàn)的功能的功能塊。系統(tǒng)500包括便于這里公開的搶占式DNS解析算法的執(zhí)行的電氣部件的邏輯編組510。邏輯編組510可以包括用于檢查給客戶機設備的數(shù)據(jù)分組的模塊520。此外,邏輯編組510包括用于識別被檢查的數(shù)據(jù)分組中嵌入的主機名和域名的模塊530。此外,邏輯編組510包括用于將嵌入的主機名和域名轉換成關聯(lián)的IP地址的模塊540。最后,邏輯編組510包括用于向客戶機設備發(fā)送轉換出來的IP地址的模塊550。系統(tǒng)500還包括存儲器560,存儲器560保存用于執(zhí)行與電氣部件520-550相關聯(lián)的功能的指令。盡管被圖示為在存儲器560外部,但要理解,電氣部件520-550可以在系統(tǒng)500的存儲器560中。圖6示出了無線通信系統(tǒng)600的實例,可以在其中實施用于搶占式DNS解析的方法的各個方面。為了簡潔起見,系統(tǒng)600示出了無線電接入網(wǎng)中的一個基站/正向鏈路發(fā)射機610和ー個移動設備650。然而,要認識到,系統(tǒng)600可以包括超過ー個基站/正向鏈路發(fā)射機和/或超過ー個移動設備,其中額外的基站/發(fā)射機和/或移動設備可以基本類似于或不同于下面所述的實例基站/正向鏈路發(fā)射機610和移動設備650。此外,要認識至IJ,基站/正向鏈路發(fā)射機610和/或移動設備650可以采用這里所描述的系統(tǒng)(圖1、4和5)和/或方法(圖2和3)以便于等待時間測量過程和其間的無線通信。在基站/正向鏈路發(fā)射機610,從數(shù)據(jù)源612向發(fā)射(TX)數(shù)據(jù)處理器614提供用于若干數(shù)據(jù)流的業(yè)務數(shù)據(jù)。根據(jù)實例,每個數(shù)據(jù)流可以通過相應天線發(fā)射。TX數(shù)據(jù)處理器614基于為業(yè)務數(shù)據(jù)流選擇的特定編碼方案對該數(shù)據(jù)流進行格式化、編碼和交織,以提供已編碼數(shù)據(jù)??梢岳谜活l分復用(OFDM)技術將用于每個數(shù)據(jù)流的已編碼數(shù)據(jù)與導頻數(shù)據(jù)復用。此外或備選地,可以對導頻符號進行頻分復用(FDM)、時分復用(TDM)或碼分復用(CDM)0導頻數(shù)據(jù)通常是以已知方式處理的已知數(shù)據(jù)模式,并可以在移動設備650處用于估計信道響應??梢曰跒槊總€數(shù)據(jù)流選擇的特定調(diào)制方案(例如二相移鍵控(BPSK)、四相移鍵控(QSPK)、M相移鍵控(M-PSK)或M正交調(diào)幅(M-QAM)等)調(diào)制(例如,符號映射)該數(shù)據(jù)流的復用導頻和已編碼數(shù)據(jù),以提供調(diào)制符號??梢杂商幚砥?30執(zhí)行或提供的指令確定用于每個數(shù)據(jù)流的數(shù)據(jù)率、編碼和調(diào)制??梢韵騎X MMO處理器620提供數(shù)據(jù)流的調(diào)制符號,TX MMO處理器620還可以處理調(diào)制符號(例如用于OFDM)。TX MIMO處理器620然后向NT個發(fā)射機(TMTR)622a到622t提供NT個調(diào)制符號流。在某些方面中,TX MMO處理器620向數(shù)據(jù)流的符號井向正從其發(fā)射符號的天線應用波束形成權重。每個發(fā)射機622接收并處理相應的符號流以提供一個或多個模擬信號,并進一歩調(diào)節(jié)(例如放大、濾波和上變頻)模擬信號以提供適于通過MMO信道傳輸?shù)囊颜{(diào)制信號。此夕卜,分別從NT個天線624a到624t發(fā)射來自發(fā)射機622a到622t的NT個已調(diào)制信號。在移動設備650,發(fā)射的已調(diào)制信號被NR個天線652a到652r接收,并將從每個天線652接收的信號提供到相應接收機(RCVR) 654a到654r。每個接收機654調(diào)節(jié)(例如濾波、放大和下變頻)相應的信號,對調(diào)節(jié)的信號進行數(shù)字化,并進ー步處理樣本以提供對應的“已接收”符號流。RX數(shù)據(jù)處理器660然后能夠基于特定的接收機處理技術從NR個接收機654接收并處理NR個接收符號流,以提供NT個“檢測出來的”符號流。RX數(shù)據(jù)處理器660能夠對每個檢測出來的符號流進行解調(diào)、解交織和解碼以恢復用于數(shù)據(jù)流的業(yè)務數(shù)據(jù)。RX數(shù)據(jù)處理器660的處理與基站/正向鏈路發(fā)射機610處TX MIMO處理器620和TX數(shù)據(jù)處理器614執(zhí)行的處理互補。如上所述,處理器670可以周期性地確定使用哪個預編碼矩陣。此外,處理器670可以構建包括矩陣索引部分和秩值部分的反向鏈路消息。反向鏈路消息可以包括關于通信鏈路和/或所接收數(shù)據(jù)流的各種信息。反向鏈路消息可以由TX數(shù)據(jù)處理器638處理,由調(diào)制器680調(diào)制,由發(fā)射機654a到654r調(diào)節(jié)并被發(fā)射回基站/正向鏈路發(fā)射機610,TX數(shù)據(jù)處理器638還從數(shù)據(jù)源636接收用于若干數(shù)據(jù)流的業(yè)務數(shù)據(jù)。在基站/正向鏈路發(fā)射機610,來自移動設備650的已調(diào)制信號可以被天線624接收,被接收機622調(diào)節(jié),被解調(diào)器640解調(diào)并被RX數(shù)據(jù)處理器642處理,以提取由移動設備650發(fā)射的反向鏈路消息。此外,處理器630可以處理提取出的消息以確定將哪個預編碼矩陣用于確定波束形成權重。要認識到,在正向鏈路發(fā)射機810這種情況下,與基站相反,可能沒有這些RX部件,因為僅在正向鏈路上廣播數(shù)據(jù)。
處理器630和670能夠分別引導(例如控制、協(xié)調(diào)、管理等)基站/正向鏈路發(fā)射機610和移動設備650處的工作。相應的處理器630和670可以與存儲程序代碼和數(shù)據(jù)的存儲器632和672相關聯(lián)。處理器630和670還可以執(zhí)行計算以分別為上行鏈路和下行鏈路導出頻率和脈沖響應估計。要明白,可以在硬件、軟件、固件、中間件、微碼或者它們的任意組合中實施這里所述的各方面。對于硬件實現(xiàn)而言,可以在ー個或多個專用集成電路(ASIC)、數(shù)字信號處理器(DSP)、數(shù)字信號處理設備(DSPD)、可編程邏輯器件(PLD)、現(xiàn)場可編程門陣列(FPGA)、處理器、控制器、微控制器、微處理器、被設計來執(zhí)行這里所描述的功能的其它電子単元或者它們的組合之內(nèi)實施處理單元。當在軟件、固件、中間件或微碼、程序代碼或代碼段中實施各方面時,可以將它們存儲在機器可讀介質,例如存儲部件中。代碼段可以表示流程、函數(shù)、子程序、程序、例程、子例程、模塊、軟件包、類或指令、數(shù)據(jù)結構或程序語句的任意組合??梢酝ㄟ^傳遞和/或接收信息、數(shù)據(jù)、自變量、參數(shù)或存儲內(nèi)容將代碼段耦合到另一代碼段或硬件電路??梢岳萌魏芜m當?shù)氖侄?,包括存儲器共享、消息傳送、令牌傳送以及網(wǎng)絡傳輸?shù)葌魉汀⑥D發(fā)或發(fā)射信息、自變量、參數(shù)、數(shù)據(jù)等。對于軟件實現(xiàn)而言,可以利用執(zhí)行這里所述功能的模塊(例如,流程、函數(shù)等)實施這里所述的技木。軟件代碼可以存儲于存儲單元中并由處理器執(zhí)行??梢栽谔幚砥髦畠?nèi)或處理器外部實現(xiàn)存儲單元,在后一種情況下,可以通過現(xiàn)有技術已知的各種手段將其通信耦合到處理器??梢岳帽辉O計成執(zhí)行這里所述功能的通用處理器、數(shù)字信號處理器(DSP)、專用集成電路(ASIC)、現(xiàn)場可編程門陣列(FPGA)或其它可編程邏輯器件、分立柵極或晶體管邏輯、離散硬件部件或者它們的任意組合來實施或執(zhí)行結合這里公開的各方面描述的各種示例性邏輯、邏輯塊、模塊和電路。通用處理器可以是微處理器,但在備選方案中,處理器可以是任何常規(guī)處理器、控制器、微控制器或狀態(tài)機。可以將處理器實現(xiàn)為計算設備的組合,例如DSP和微處理器、多個微處理器、一個或多個微處理器結合DSP內(nèi)核的組合或任何其它這種配置。此外,至少ー個處理器可以包括ー個或多個用于執(zhí)行上述一個或多個步驟和/或動作的模塊??梢詫⒔Y合這里公開的各方面描述的方法或算法的步驟和/或動作直接實現(xiàn)于硬件中、實現(xiàn)于由處理器執(zhí)行的軟件模塊中或實現(xiàn)于兩者的組合中。軟件模塊可以存在于RAM存儲器、快閃存儲器、ROM存儲器、EPROM存儲器、EEPROM存儲器、寄存器、硬盤、活動磁盤、CD-ROM或任何本領域已知的其它形式存儲介質中??梢詫⑹痉缎源鎯橘|耦合到處理器,使得處理器能夠從存儲介質讀取信息以及向存儲介質寫入信息。在備選方案中,存儲介質可以與處理器是一體的。此外,在ー些方面中,處理器和存儲介質可以處于ASIC中。此夕卜,ASIC可以存在于用戶終端中。在備選方案中,處理器和存儲介質可以作為用戶終端中的分立部件而存在。此外,在ー些方面中,方法或算法的步驟和/或動作可以作為機器可讀介質和/或計算機可讀介質上代碼和/或指令之一或任意組合或集合而存在,機器可讀介質和/或計算機可讀介質可以并入計算機程序產(chǎn)品中。在ー個或多個方面中,可以將所述的功能實施于硬件、軟件、固件或者它們的任意組合中。如果實施于軟件中,可以將功能作為ー個或多個指令或代碼在計算機可讀介質上存儲或發(fā)送。計算機可讀介質既包括計算機存儲介質又包括通信介質,通信介質包括輔助從一地到另一地轉移計算機程序的任何介質。存儲介質可以是能夠被計算機訪問的任何可用介質。作為實例而非限制,這種計算機可讀介質可以包括RAM、ROM、EEPROM、CD-ROM或其它光盤存儲器、磁盤存儲器或其它磁性存儲設備,或可用于以指令或數(shù)據(jù)結構的形式運載或存儲期望的程序代碼段并可以被計算機訪問的任何其它介質。而且,可以將任何連接 適當?shù)胤Q為計算機可讀介質。例如,如果利用同軸電纜、光纖光纜、雙絞線、數(shù)字用戶線路(DSL)或諸如紅外、無線電和/或微波的無線技術從網(wǎng)站、服務器或其它遠程源傳輸軟件,那么同軸電纜、光纖光纜、雙絞線、DSL或諸如紅外、無線電和/或微波的無線技術被包括在介質的定義中。如這里所使用的,盤和盤片包括壓縮盤(CD)、激光盤、光盤、數(shù)字多功能盤(DVD)、軟盤和藍光盤,其中盤通常以磁性方式再現(xiàn)數(shù)據(jù),而盤片利用激光以光學方式再現(xiàn)數(shù)據(jù)。以上的組合應當包括在計算機可讀介質的范圍之內(nèi)。盡管以上公開論述了示例性方面,但應當指出,在這里可以做出各種改變和修改而不脫離所附權利要求界定的所述方面的范圍。此外,盡管可能以單數(shù)形式描述或主張所述方面的要素,但除非明確指出限于單數(shù),也可以想到復數(shù)。此外,除非另有說明,可以將任何方面的全部或部分與任何其它方面的全部或部分一起使用。
權利要求
1.一種用于通信的方法,包括 由代理設備檢查向客戶機設備發(fā)送的ー個或多個數(shù)據(jù)分組; 識別被檢查的數(shù)據(jù)分組中嵌入的一個或多個主機設備名; 解析與嵌入的所述ー個或多個主機設備名相關聯(lián)的IP地址; 向所述客戶機設備發(fā)送未加改變的被檢查的數(shù)據(jù)分組;以及 獨立于被檢查的數(shù)據(jù)分組,向所述客戶機設備發(fā)送所述ー個或多個主機設備名和相關聯(lián)的解析出來的所述IP地址,供所述客戶機設備用于建立到被檢查的數(shù)據(jù)分組中標識的主機設備的連接。
2.根據(jù)權利要求I所述的方法,其中識別被檢查的數(shù)據(jù)分組中嵌入的一個或多個主機設備名包括重構被截獲的所述ー個或多個數(shù)據(jù)分組的代碼。
3.根據(jù)權利要求I所述的方法,其中識別被檢查的數(shù)據(jù)分組中嵌入的一個或多個主機設備名包括使用ASCII字符串模式匹配來分析被檢查的數(shù)據(jù)分組。
4.根據(jù)權利要求I所述的方法,其中解析所述IP地址還包括 捜索所述代理設備的本地高速緩存以查找與嵌入的所述ー個或多個主機設備名相關聯(lián)的所述IP地址;以及 當在所述代理設備的本地高速緩存中定位相關聯(lián)的所述IP地址失敗吋,由所述代理設備查詢ー個或多個DNS服務器來解析與嵌入的所述ー個或多個主機設備名相關聯(lián)的所述IP地址。
5.根據(jù)權利要求I所述的方法,其中解析所述IP地址還包括在所述代理設備的本地高速緩存中存儲識別出來的所述ー個或多個主機設備名和相關聯(lián)的解析出來的所述IP地址。
6.根據(jù)權利要求I所述的方法,其中由所述代理設備檢查向所述客戶機設備發(fā)送的一個或多個數(shù)據(jù)分組包括檢查在具有第一傳播等待時間的第一通信鏈路上向所述客戶機設備發(fā)送的數(shù)據(jù)分組。
7.根據(jù)權利要求6所述的方法,其中向所述客戶機設備發(fā)送未加改變的被檢查的數(shù)據(jù)分組包括在具有第二傳播等待時間的第二通信鏈路上發(fā)送被檢查的數(shù)據(jù)分組,其中所述第一傳播等待時間基本低于所述第二傳播等待時間。
8.根據(jù)權利要求7所述的方法,其中所述客戶機設備包括移動設備,其中所述第一通信鏈路包括核心IP網(wǎng),所述第二通信鏈路包括無線電接入網(wǎng)(RAN),并且其中所述代理設備由連接所述RAN和所述核心IP網(wǎng)的IP接入網(wǎng)關主持。
9.根據(jù)權利要求7所述的方法,其中所述第一通信鏈路包括廣域網(wǎng)(WAN),所述第二通信鏈路包括局域網(wǎng)(LAN),并且其中所述代理設備由連接所述LAN和WAN的路由器主持。
10.ー種通信系統(tǒng),包括 處理器和耦合到所述處理器的通信部件,所述處理器被配置成 由代理設備檢查向客戶機設備發(fā)送的ー個或多個數(shù)據(jù)分組; 識別被檢查的數(shù)據(jù)分組中嵌入的一個或多個主機設備名; 解析與嵌入的所述ー個或多個主機設備名相關聯(lián)的IP地址; 向所述客戶機設備發(fā)送未加改變的被檢查的數(shù)據(jù)分組;以及 獨立于被檢查的數(shù)據(jù)分組,向所述客戶機設備發(fā)送所述ー個或多個主機設備名和相關聯(lián)的解析出來的所述IP地址,供所述客戶機設備用于建立到被檢查的數(shù)據(jù)分組中標識的主機設備的連接。
11.根據(jù)權利要求10所述的系統(tǒng),其中,為了識別被檢查的數(shù)據(jù)分組中嵌入的ー個或多個主機設備名,所述處理器還被配置成重構被截獲的所述ー個或多個數(shù)據(jù)分組的代碼。
12.根據(jù)權利要求10所述的系統(tǒng),其中,為了識別被檢查的數(shù)據(jù)分組中嵌入的ー個或多個主機設備名,所述處理器還被配置成使用ASCII字符串模式匹配來分析被檢查的數(shù)據(jù)分組。
13.根據(jù)權利要求10所述的系統(tǒng),其中,為了解析所述IP地址,所述處理器還被配置成 捜索所述代理設備的本地高速緩存以查找與嵌入的所述ー個或多個主機設備名相關聯(lián)的所述IP地址;以及 當在所述代理設備的本地高速緩存中定位相關聯(lián)的所述IP地址失敗吋,由所述代理設備查詢ー個或多個DNS服務器來解析與嵌入的所述ー個或多個主機設備名相關聯(lián)的所述IP地址。
14.根據(jù)權利要求10所述的系統(tǒng),其中為了解析所述IP地址,所述處理器還被配置成在所述代理設備的本地高速緩存中存儲識別出來的所述ー個或多個主機設備名和相關聯(lián)的解析出來的所述IP地址。
15.根據(jù)權利要求10所述的系統(tǒng),其中為了檢查向所述客戶機設備發(fā)送的ー個或多個數(shù)據(jù)分組,所述處理器還被配置成檢查在具有第一傳播等待時間的第一通信鏈路上向所述客戶機設備發(fā)送的數(shù)據(jù)分組。
16.根據(jù)權利要求15所述的系統(tǒng),其中為了向所述客戶機設備發(fā)送未加改變的被檢查的數(shù)據(jù)分組,所述處理器還被配置成在具有第二傳播等待時間的第二通信鏈路上發(fā)送被檢查的數(shù)據(jù)分組,其中所述第一傳播等待時間基本低于所述第二傳播等待時間。
17.根據(jù)權利要求16所述的系統(tǒng),其中所述客戶機設備包括移動設備,其中所述第一通信鏈路包括核心IP網(wǎng),所述第二通信鏈路包括無線電接入網(wǎng)(RAN),并且其中所述通信系統(tǒng)由連接所述RAN和所述核心IP網(wǎng)的IP接入網(wǎng)關主持。
18.根據(jù)權利要求16所述的系統(tǒng),其中所述第一通信鏈路包括廣域網(wǎng)(WAN),所述第二通信鏈路包括局域網(wǎng)(LAN),并且其中通信系統(tǒng)由連接所述LAN和WAN的路由器主持。
19.一種計算機程序產(chǎn)品,包括 計算機可讀介質,該計算機可讀介質包括 用于令計算機檢查向客戶機設備發(fā)送的一個或多個數(shù)據(jù)分組的第一組代碼; 用于令所述計算機識別被檢查的數(shù)據(jù)分組中嵌入的一個或多個主機設備名的第二組代碼; 用于令所述計算機解析與嵌入的所述ー個或多個主機設備名相關聯(lián)的IP地址的第三組代碼; 用于令所述計算機向所述客戶機設備發(fā)送未加改變的被檢查的數(shù)據(jù)分組的第四組代碼;以及 用于令所述計算機獨立于被檢查的數(shù)據(jù)分組,向所述客戶機設備發(fā)送所述ー個或多個主機設備名和相關聯(lián)的解析出來的所述IP地址,供所述客戶機設備用于建立到被檢查的數(shù)據(jù)分組中標識的主機設備的連接的第五組代碼。
20.根據(jù)權利要求19所述的產(chǎn)品,其中,所述第二組代碼還包括用于令所述計算機重構被截獲的所述ー個或多個數(shù)據(jù)分組的代碼的第六組代碼。
21.根據(jù)權利要求19所述的產(chǎn)品,其中,所述第二組代碼還包括用于令所述計算機使用ASCII字符串模式匹配來分析被檢查的數(shù)據(jù)分組的第七組代碼。
22.根據(jù)權利要求19所述的產(chǎn)品,其中,所述第三組代碼還包括用于令所述計算機執(zhí)行以下操作的第八組代碼 捜索所述代理設備的本地高速緩存以查找與嵌入的所述ー個或多個主機設備名相關聯(lián)的所述IP地址;以及 當在所述代理設備的本地高速緩存中定位相關聯(lián)的所述IP地址失敗吋,由所述代理設備查詢ー個或多個DNS服務器來解析與嵌入的所述ー個或多個主機設備名相關聯(lián)的所述IP地址。
23.根據(jù)權利要求19所述的產(chǎn)品,其中,所述第三組代碼還包括用于令所述計算機在所述代理設備的本地高速緩存中存儲識別出來的所述ー個或多個主機設備名和相關聯(lián)的解析出來的所述IP地址的第九組代碼。
24.根據(jù)權利要求19所述的產(chǎn)品,其中,所述第一組代碼還包括令所述計算機檢查在具有第一傳播等待時間的第一通信鏈路上向所述客戶機設備發(fā)送的數(shù)據(jù)分組的第十組代碼。
25.根據(jù)權利要求24所述的產(chǎn)品,其中,所述第四組代碼還包括令所述計算機在具有第二傳播等待時間的第二通信鏈路上發(fā)送被檢查的數(shù)據(jù)分組的第十一組代碼,其中所述第一傳播等待時間基本低于所述第二傳播等待時間。
26.根據(jù)權利要求25所述的產(chǎn)品,其中所述客戶機設備包括移動設備,其中所述第一通信鏈路包括核心IP網(wǎng),所述第二通信鏈路包括無線電接入網(wǎng)(RAN),并且其中所述計算機由連接所述RAN和所述核心IP網(wǎng)的IP接入網(wǎng)關主持。
27.根據(jù)權利要求25所述的產(chǎn)品,其中,所述第一通信鏈路包括廣域網(wǎng)(WAN),所述第二通信鏈路包括局域網(wǎng)(LAN),并且其中所述計算機由連接所述LAN和WAN的路由器主持。
28.ー種裝置,包括 用于檢查向客戶機設備發(fā)送的ー個或多個數(shù)據(jù)分組的模塊; 用于識別被檢查的數(shù)據(jù)分組中嵌入的一個或多個主機設備名的模塊; 用于解析與嵌入的所述ー個或多個主機設備名相關聯(lián)的IP地址的模塊; 用于向所述客戶機設備發(fā)送未加改變的被檢查的數(shù)據(jù)分組的模塊;以及 用于獨立于被檢查的數(shù)據(jù)分組向所述客戶機設備發(fā)送所述ー個或多個主機設備名和相關聯(lián)的解析出來的所述IP地址以供所述客戶機設備用于建立到被檢查的數(shù)據(jù)分組中標識的主機設備的連接的模塊。
29.根據(jù)權利要求28所述的裝置,其中用于識別被檢查的數(shù)據(jù)分組中嵌入的一個或多個主機設備名的模塊包括用于重構被截獲的所述ー個或多個數(shù)據(jù)分組的代碼的模塊。
30.根據(jù)權利要求28所述的裝置,其中用于識別被檢查的數(shù)據(jù)分組中嵌入的一個或多個主機設備名的模塊包括用于使用ASCII字符串模式匹配來分析被檢查的數(shù)據(jù)分組的模塊。
31.根據(jù)權利要求28所述的裝置,其中用于解析所述IP地址的模塊還包括 用于搜索本地高速緩存以查找與嵌入的所述ー個或多個主機設備名相關聯(lián)的所述IP地址的模塊;以及 用于當在所述本地高速緩存中定位相關聯(lián)的所述IP地址失敗時查詢ー個或多個DNS服務器來解析與嵌入的所述ー個或多個主機設備名相關聯(lián)的所述IP地址的模塊。
32.根據(jù)權利要求28所述的裝置,其中用于解析所述IP地址的模塊還包括用于在本地高速緩存中存儲識別出來的所述ー個或多個主機設備名和相關聯(lián)的解析出來的所述IP地址的模塊。
33.根據(jù)權利要求28所述的裝置,其中用于檢查向所述客戶機設備發(fā)送的ー個或多個數(shù)據(jù)分組的模塊包括用于檢查在具有第一傳播等待時間的第一通信鏈路上向所述客戶機設備發(fā)送的數(shù)據(jù)分組的模塊。
34.根據(jù)權利要求33所述的裝置,其中用于向所述客戶機設備發(fā)送未加改變的被檢查的數(shù)據(jù)分組的模塊包括用于在具有第二傳播等待時間的第二通信鏈路上發(fā)送被檢查的數(shù)據(jù)分組的模塊,其中所述第一傳播等待時間基本低于所述第二傳播等待時間。
35.根據(jù)權利要求34所述的裝置,其中所述客戶機設備包括移動設備,其中所述第一通信鏈路包括核心IP網(wǎng),所述第二通信鏈路包括無線電接入網(wǎng)(RAN),并且其中所述裝置由連接所述RAN和所述核心IP網(wǎng)的IP接入網(wǎng)關主持。
36.根據(jù)權利要求34所述的裝置,其中所述第一通信鏈路包括廣域網(wǎng)(WAN),所述第二通信鏈路包括局域網(wǎng)(LAN),并且其中所述裝置由連接所述LAN和WAN的路由器主持。
全文摘要
公開了用于搶占式DNS解析的系統(tǒng)、方法和計算機程序產(chǎn)品。提供DNS代理以檢查在第一通信鏈路上向客戶機設備發(fā)送的數(shù)據(jù)分組。該代理識別被檢查的數(shù)據(jù)分組中嵌入的一個或多個主機設備名并解析與嵌入的主機設備名相關聯(lián)的IP地址。該代理設備在第二通信鏈路上向客戶機設備發(fā)送未加改變的被檢查的數(shù)據(jù)分組。第二通信鏈路具有比第一通信鏈路明顯更長的傳播等待時間。該代理然后獨立于被檢查的數(shù)據(jù)分組,向所述客戶機設備發(fā)送這一個或多個主機設備名和相關聯(lián)的解析出來的IP地址,供所述客戶機設備用于建立到被檢查的數(shù)據(jù)分組中標識的所述主機設備的連接。
文檔編號H04L29/12GK102668517SQ201080058751
公開日2012年9月12日 申請日期2010年12月21日 優(yōu)先權日2009年12月21日
發(fā)明者L·維奇薩諾, M·沃森 申請人:高通股份有限公司