專利名稱:在多處理器計(jì)算環(huán)境中管理數(shù)據(jù)服務(wù)的方法和設(shè)備的制作方法
技術(shù)領(lǐng)域:
本發(fā)明大體上涉及移動計(jì)算,且更具體地說,涉及用于管理一個或一個以上計(jì)算 裝置之間的共享網(wǎng)絡(luò)連接的技術(shù)。
背景技術(shù):
按照慣例,用于移動計(jì)算裝置(例如,個人數(shù)字助理(PDA)、智能電話、手持式計(jì)算 機(jī)等)的雙處理器和/或其它多處理器環(huán)境可包括負(fù)責(zé)空中接口協(xié)議操作的調(diào)制解調(diào)器處 理器和運(yùn)行所述裝置的操作系統(tǒng)的應(yīng)用程序處理器。此外,此環(huán)境中的相應(yīng)處理器可連接 到外圍設(shè)備和/或外部存儲器,所述外部存儲器可分割成分別對應(yīng)于調(diào)制解調(diào)器處理器、 應(yīng)用程序處理器和處理器間通信的三個區(qū)。為了完成各種計(jì)算任務(wù),多處理器移動計(jì)算環(huán)境中的相應(yīng)處理器和/或所述處理 器與之相關(guān)聯(lián)的存儲器區(qū)可經(jīng)配置以彼此交互。因此,例如,使用應(yīng)用程序處理器在移動計(jì) 算裝置上運(yùn)行的應(yīng)用程序可利用由調(diào)制解調(diào)器處理器提供的無線數(shù)據(jù)連接性。作為另一實(shí) 例,移動計(jì)算裝置可利用與經(jīng)由一個或一個以上接口連接或聯(lián)機(jī)到所述移動裝置的另一計(jì) 算裝置共享的數(shù)據(jù)服務(wù)。在此實(shí)例中,移動計(jì)算裝置和所聯(lián)機(jī)的裝置可關(guān)于移動裝置的無 線數(shù)據(jù)連接利用共用因特網(wǎng)協(xié)議(IP)地址。因此,可能需要移動裝置來監(jiān)視上行鏈路和下 行鏈路包流,且執(zhí)行網(wǎng)絡(luò)地址翻譯(NAT)以將適當(dāng)?shù)臄?shù)據(jù)引導(dǎo)到所聯(lián)機(jī)的裝置。傳統(tǒng)上,此 些操作由應(yīng)用程序處理器在移動裝置處執(zhí)行,使得所有數(shù)據(jù)包必須傳送到調(diào)制解調(diào)器存儲 器區(qū)且從調(diào)制解調(diào)器存儲器區(qū)傳送到應(yīng)用程序存儲器區(qū)。鑒于上述實(shí)例,可了解,在嵌入式應(yīng)用程序情況和數(shù)據(jù)服務(wù)共享情況兩者中,在移 動裝置的調(diào)制解調(diào)器與應(yīng)用程序處理器之間需要大量的數(shù)據(jù)復(fù)制以用于數(shù)據(jù)處理和/或 傳送。這些數(shù)據(jù)復(fù)制可產(chǎn)生移動裝置的系統(tǒng)總線和外部存儲器上的過多事務(wù),從而增加功 率消耗和CPU資源使用,并且增加端到端延遲。因此,將需要實(shí)施用于移動計(jì)算裝置的至少 減輕上述缺點(diǎn)的多處理器管理技術(shù)。
發(fā)明內(nèi)容
以下呈現(xiàn)對所主張標(biāo)的物的各種方面的簡化概述,以便提供對此些方面的基本理 解。此概述并非所有被涵蓋方面的廣泛綜述,且既無意識別關(guān)鍵或重要元素也無意劃定此 些方面的范圍。此概述的唯一目的是以簡化形式呈現(xiàn)所揭示方面的一些概念,作為稍后呈
7現(xiàn)的更詳細(xì)描述的序言。根據(jù)一方面,本文中描述一種方法。所述方法可包含從應(yīng)用程序處理器接收一個 或一個以上網(wǎng)絡(luò)地址翻譯(NAT)規(guī)則;在所耦合的接口上獲得包;嘗試對從所述應(yīng)用程序 處理器接收的對應(yīng)于所述所獲得的包的NAT規(guī)則的識別;在成功的識別嘗試后即刻根據(jù)所 識別的NAT規(guī)則來翻譯所述所獲得的包,且將經(jīng)翻譯的包轉(zhuǎn)發(fā)到一個或一個以上經(jīng)翻譯包 目的地;以及在不成功的識別嘗試后即刻將所述所獲得的包轉(zhuǎn)發(fā)到一個或一個以上包處理 目的地。第二方面涉及一種移動計(jì)算設(shè)備,其可包含存儲器,所述存儲器存儲與由應(yīng)用程 序處理器提供的一個或一個以上NAT規(guī)則有關(guān)的數(shù)據(jù)。所述移動計(jì)算設(shè)備可進(jìn)一步包含耦 合到所述存儲器的至少一個處理器,其與所述應(yīng)用程序處理器相異,所述至少一個處理器 經(jīng)配置以在所耦合的接口上接收包,嘗試對對應(yīng)于所述所接收的包的NAT規(guī)則的識別,在 NAT規(guī)則的成功識別后即刻根據(jù)所識別的NAT規(guī)則來翻譯所述所接收的包并將所述經(jīng)翻譯 的包轉(zhuǎn)發(fā)到至少一個經(jīng)翻譯包目的地,且在NAT規(guī)則的不成功識別后即刻將所述所接收的 包轉(zhuǎn)發(fā)到至少一個包處理目的地。根據(jù)第三方面,本文中描述一種設(shè)備。所述設(shè)備可包含用于從相關(guān)聯(lián)的應(yīng)用程序 處理器接收相應(yīng)的NAT映射規(guī)則的裝置;用于識別經(jīng)由接口獲得的包的裝置;用于嘗試使 所述所識別的包與所接收的NAT映射規(guī)則匹配的裝置;用于在成功的所嘗試匹配后即刻根 據(jù)匹配NAT映射規(guī)則來翻譯所述所識別的包的裝置;用于在應(yīng)用所述匹配NAT映射規(guī)則后 即刻將所述經(jīng)翻譯的包引導(dǎo)到一個或一個以上經(jīng)翻譯包目的地的裝置;以及用于在不成功 的所嘗試匹配后即刻將所述所識別的包引導(dǎo)到一個或一個以上包處理目的地的裝置。本文中所描述的第四方面涉及一種集成電路,其執(zhí)行機(jī)器可執(zhí)行指令。所述指令 可包含從相關(guān)聯(lián)的應(yīng)用程序處理器接收相應(yīng)的NAT映射規(guī)則;識別經(jīng)由接口獲得的包; 嘗試使所述所識別的包與相應(yīng)的NAT映射規(guī)則匹配;在成功的所嘗試匹配后即刻根據(jù)匹配 NAT映射規(guī)則來翻譯所述所識別的包;在應(yīng)用匹配NAT映射規(guī)則后即刻將所述經(jīng)翻譯的包 引導(dǎo)到一個或一個以上經(jīng)翻譯包目的地;以及在不成功的所嘗試匹配后即刻將所述所識別 的包引導(dǎo)到一個或一個以上包處理目的地。為實(shí)現(xiàn)前述和相關(guān)目的,所主張標(biāo)的物的一個或一個以上方面包含在下文充分描 述且在所附權(quán)利要求書中特別指出的特征。以下描述和附圖詳細(xì)陳述所主張標(biāo)的物的某些 說明性方面。然而,這些方面僅指示可使用所主張標(biāo)的物的原理的各種方式中的少數(shù)幾種。 此外,所揭示的方面意在包括所有此些方面及其均等物。
圖1是根據(jù)各種方面的促進(jìn)多處理器移動計(jì)算環(huán)境中的高效存儲器管理的系統(tǒng) 的框圖。圖2是根據(jù)各種方面的用于借助于網(wǎng)絡(luò)地址翻譯(NAT)功能而共享網(wǎng)絡(luò)接口(包 括對相應(yīng)本地處理器和/或經(jīng)聯(lián)機(jī)處理器的服務(wù))的實(shí)例系統(tǒng)的框圖。圖3說明可用以實(shí)施網(wǎng)絡(luò)接口共享的實(shí)例移動計(jì)算架構(gòu)。圖4說明根據(jù)各種方面的可用以促進(jìn)與網(wǎng)絡(luò)接口共享會話相關(guān)聯(lián)的高級數(shù)據(jù)服 務(wù)管理的移動計(jì)算架構(gòu)的實(shí)例。
圖5到圖6說明根據(jù)各種方面的與由相應(yīng)的實(shí)例多處理器移動計(jì)算實(shí)施方案進(jìn)行 的網(wǎng)絡(luò)接口共享會話相關(guān)聯(lián)的信息流。圖7到圖9是用于管理與移動計(jì)算裝置相關(guān)聯(lián)的數(shù)據(jù)流的相應(yīng)方法的流程圖。圖10是促進(jìn)用于網(wǎng)絡(luò)接口共享應(yīng)用程序的數(shù)據(jù)服務(wù)管理的設(shè)備的框圖。圖11說明本文中所描述的各種方面可在其中起作用的實(shí)例無線通信系統(tǒng)。圖12是可用以實(shí)施本文中所描述的一個或一個以上方面的實(shí)例計(jì)算系統(tǒng)的框 圖。
具體實(shí)施例方式現(xiàn)在參看圖式描述所主張標(biāo)的物的各種方面,其中相同參考標(biāo)號始終用以指代相 同元件。在以下描述中,為實(shí)現(xiàn)闡釋目的,陳述大量特定細(xì)節(jié)以便提供對一個或一個以上方 面的透徹理解。然而,可為明顯的是,所述方面可在沒有這些特定細(xì)節(jié)的情況下實(shí)踐。在其 它例子中,以框圖形式展示眾所周知的結(jié)構(gòu)和裝置以便促進(jìn)描述一個或一個以上方面。如本申請案中所使用,術(shù)語“組件”、“模塊”、“系統(tǒng)”等既定指代計(jì)算機(jī)相關(guān)實(shí)體, 其為硬件、固件、硬件與軟件的組合、軟件或執(zhí)行中軟件。舉例來說,組件可為(但不限于) 在處理器上運(yùn)行的進(jìn)程、集成電路、對象、可執(zhí)行文件、執(zhí)行線程、程序和/或計(jì)算機(jī)。作為 說明,在計(jì)算裝置上運(yùn)行的應(yīng)用程序和計(jì)算裝置兩者均可為組件。一個或一個以上組件可 駐存在進(jìn)程和/或執(zhí)行線程內(nèi),且一組件可位于一臺計(jì)算機(jī)上和/或分布于兩臺或兩臺以 上計(jì)算機(jī)之間。此外,這些組件可從上面存儲有各種數(shù)據(jù)結(jié)構(gòu)的各種計(jì)算機(jī)可讀媒體執(zhí)行。 所述組件可經(jīng)由本地進(jìn)程和/或遠(yuǎn)程進(jìn)程進(jìn)行通信,例如根據(jù)具有一個或一個以上數(shù)據(jù)包 的信號(所述數(shù)據(jù)例如是來自一個借助所述信號與在本地系統(tǒng)、分布式系統(tǒng)中的另一組件 和/或跨越例如因特網(wǎng)等網(wǎng)絡(luò)與其它系統(tǒng)交互的組件的數(shù)據(jù))。此外,本文中結(jié)合無線終端和/或基站而描述各種方面。無線終端可指代將語音 連接性和/或數(shù)據(jù)連接性提供給用戶的裝置。無線終端可連接到例如膝上型計(jì)算機(jī)或桌上 型計(jì)算機(jī)等計(jì)算裝置,或其可為例如個人數(shù)字助理(PDA)等自含式裝置。無線終端也可稱 作系統(tǒng)、訂戶單元、訂戶臺、移動臺、移動裝置、遠(yuǎn)程臺、接入點(diǎn)、遠(yuǎn)程終端、接入終端、用戶終 端、用戶代理、用戶裝置或用戶設(shè)備(UE)。無線終端可為訂戶臺、無線裝置、蜂窩式電話、PCS 電話、無繩電話、會話發(fā)起協(xié)議(SIP)電話、無線本地環(huán)路(WLL)臺、個人數(shù)字助理(PDA)、具 有無線連接能力的手持式裝置或連接到無線調(diào)制解調(diào)器的其它處理裝置。基站(例如,接 入點(diǎn)或演進(jìn)型節(jié)點(diǎn)B(eNB))可指代接入網(wǎng)絡(luò)中經(jīng)由一個或一個以上扇區(qū)經(jīng)空中接口與無 線終端通信的裝置?;究赏ㄟ^將接收到的空中接口幀轉(zhuǎn)換為IP包而充當(dāng)無線終端與接 入網(wǎng)絡(luò)(其可包括因特網(wǎng)協(xié)議(IP)網(wǎng)絡(luò))的其余部分之間的路由器。基站還可協(xié)調(diào)對空 中接口的屬性的管理。此外,本文中所描述的各種功能可以硬件、軟件、固件或其任一組合來實(shí)施。如果 以軟件實(shí)施,那么可將所述功能作為一個或一個以上指令或代碼存儲在計(jì)算機(jī)可讀媒體上 或經(jīng)由計(jì)算機(jī)可讀媒體傳輸。計(jì)算機(jī)可讀媒體包括計(jì)算機(jī)存儲媒體與包括促進(jìn)將計(jì)算機(jī)程 序從一處傳送到另一處的任何媒體的通信媒體。存儲媒體可為可由計(jì)算機(jī)存取的任何可用 媒體。作為實(shí)例(而非限制),此計(jì)算機(jī)可讀媒體可包含RAM、ROM、EEPROM、CD-ROM或其它光 盤存儲裝置、磁盤存儲裝置或其它磁性存儲裝置,或可用于以指令或數(shù)據(jù)結(jié)構(gòu)的形式攜載或存儲所要程序代碼且可由計(jì)算機(jī)存取的任何其它媒體。此外,嚴(yán)格地說,任何連接均可被 稱作計(jì)算機(jī)可讀媒體。舉例來說,如果使用同軸電纜、光纖電纜、雙絞線、數(shù)字訂戶線(DSL) 或例如紅外線、無線電和微波等無線技術(shù)從網(wǎng)站、服務(wù)器或其它遠(yuǎn)程來源傳輸軟件,那么同 軸電纜、光纖電纜、雙絞線、DSL或例如紅外線、無線電和微波等無線技術(shù)包括在媒體的定義 中。如本文中所使用,磁盤和光盤包括壓縮光盤(CD)、激光光盤、光學(xué)盤、數(shù)字多功能光盤 (DVD)、軟性磁盤和藍(lán)光光盤(BD),其中磁盤通常以磁性方式再現(xiàn)數(shù)據(jù),且光盤使用激光以 光學(xué)方式再現(xiàn)數(shù)據(jù)。以上各項(xiàng)的組合也應(yīng)包括在計(jì)算機(jī)可讀媒體的范圍內(nèi)。本文中所描述的各種技術(shù)可用于各種無線通信系統(tǒng),例如碼分多址(CDMA)系 統(tǒng)、時分多址(TDMA)系統(tǒng)、頻分多址(FDMA)系統(tǒng)、正交頻分多址(OFDMA)系統(tǒng)、單載波 FDMA(SC-FDMA)系統(tǒng)和其它此類系統(tǒng)。術(shù)語“系統(tǒng)”與“網(wǎng)絡(luò)”在本文中常可互換使用。CDMA 系統(tǒng)可實(shí)施例如通用陸上無線電接入(UTRA)、CDMA2000等無線電技術(shù)。UTRA包括寬帶 CDMA (W-CDMA)和 CDMA 的其它變型。另外,CDMA2000 涵蓋 IS-2000、IS-95 和 IS-856 標(biāo)準(zhǔn)。 TDMA系統(tǒng)可實(shí)施例如全球移動通信系統(tǒng)(GSM)等無線電技術(shù)。OFDMA系統(tǒng)可實(shí)施例如演 進(jìn)型 UTRA(E-UTRA)、超移動寬帶(UMB)、IEEE 802. 11 (Wi-Fi)、IEEE 802. 16 (WiMAX)、IEEE 802. 20、Flash-0FDM 等無線電技術(shù)。UTRA和E-UTRA是通用移動電信系統(tǒng)(UMTS)的一部 分。3GPP長期演進(jìn)(LTE)是使用E-UTRA的即將出現(xiàn)的版本,其在下行鏈路上使用0FDMA, 且在上行鏈路上使用SC-FDMA。UTRA、E-UTRA、UMTS、LTE和GSM在來自名為“第3代合作伙 伴計(jì)劃”(3GPP)的組織的文獻(xiàn)中得以描述。此外,CDMA2000和UMB在來自名為“第3代合 作伙伴計(jì)劃2” (3GPP2)的組織的文獻(xiàn)中得以描述。將依據(jù)可包括若干裝置、組件、模塊等的系統(tǒng)來呈現(xiàn)各種方面。應(yīng)理解并了解,各 種系統(tǒng)可包括額外裝置、組件、模塊等,且/或可不包括結(jié)合圖而論述的所有裝置、組件、模 塊等。還可使用這些做法的組合?,F(xiàn)在參看圖式,圖1說明根據(jù)本文中所描述的各種方面的促進(jìn)多處理器移動計(jì)算 環(huán)境中的有效存儲器管理的系統(tǒng)100。根據(jù)一個方面,系統(tǒng)100可包括移動裝置120,移動裝 置120可利用例如BREW(無線二進(jìn)制運(yùn)行時環(huán)境)、哩納克斯(Linux)、移動視窗(Windows Mobile)等操作系統(tǒng)(0 來提供各種通信和/或計(jì)算服務(wù)。在一個實(shí)例中,可將移動裝置 120構(gòu)造為多處理器裝置。更明確地說,移動裝置120可包括調(diào)制解調(diào)器處理器122,調(diào)制 解調(diào)器處理器122管理關(guān)于與核心網(wǎng)絡(luò)110的通信的空中接口協(xié)議操作(例如,通過控制 調(diào)制解調(diào)器123和/或一個或一個以上其它合適組件)。核心網(wǎng)絡(luò)110可為(例如)計(jì)算 網(wǎng)絡(luò)或網(wǎng)間網(wǎng)絡(luò)(例如,因特網(wǎng))、利用任何合適無線通信技術(shù)的無線或蜂窩式通信網(wǎng)絡(luò)或 其組合(例如 UTRA, E-UTRA, UMTS、LTE、GSM、CDMA2000、UMB, Wi-Fi, WiMAX 等),等等。此 外,移動裝置120可包括應(yīng)用程序處理器124(在本文中也稱為“應(yīng)用程序處理器(apps processor) ”),應(yīng)用程序處理器IM管理移動裝置120的操作系統(tǒng)和/或在其上運(yùn)行的相 應(yīng)應(yīng)用程序。在另一實(shí)例中,調(diào)制解調(diào)器處理器122和應(yīng)用程序處理器IM可連接到共享存儲 器128。作為特定實(shí)例,可將存儲器1 分割成三個區(qū),所述三個區(qū)可分別對應(yīng)于調(diào)制解調(diào) 器處理器122、應(yīng)用程序處理器IM和處理器122與IM和/或移動裝置120所利用的其它 處理器之間的處理器間通信。另外和/或替代地,調(diào)制解調(diào)器處理器122和/或應(yīng)用程序 處理器1 可經(jīng)由SDI0(安全數(shù)字輸入/輸出)、通用串行總線(USB)、藍(lán)牙(BT)、UART(通用異步接收器/發(fā)射器)和/或任何其它外圍接口來連接到一個或一個以上外圍設(shè)備(未 圖示)。根據(jù)一個方面,調(diào)制解調(diào)器處理器122和應(yīng)用程序處理器IM可協(xié)作以提供各種 服務(wù)。作為第一實(shí)例,移動裝置120可執(zhí)行一個或一個以上嵌入式應(yīng)用程序,所述一個或一 個以上嵌入式應(yīng)用程序?qū)⒂烧{(diào)制解調(diào)器123提供的無線數(shù)據(jù)連接性用于基于網(wǎng)絡(luò)或基于 因特網(wǎng)的服務(wù)。在此實(shí)例中,調(diào)制解調(diào)器123可處理空中接口協(xié)議,且將與下行鏈路數(shù)據(jù)流 相關(guān)聯(lián)的相應(yīng)包寫入到存儲器1 的調(diào)制解調(diào)器區(qū)。接下來,可將相應(yīng)包復(fù)制到存儲器1 的共享區(qū),其中所述相應(yīng)包可隨后由應(yīng)用程序處理器124復(fù)制到存儲器1 的應(yīng)用程序區(qū)。 因此,可了解,在上述實(shí)例中,可需要至少三次數(shù)據(jù)移動以在調(diào)制解調(diào)器處理器122與應(yīng)用 程序處理器1 之間處理和傳送數(shù)據(jù)包?;蛘?,對于下行鏈路數(shù)據(jù)路徑,可將存儲器1 的 第一區(qū)配置為可由調(diào)制解調(diào)器處理器122讀取和寫入,且僅可由應(yīng)用程序處理器IM讀取, 和/或反之亦然。然而,可了解,此配置可還需要存儲器128內(nèi)的數(shù)據(jù)復(fù)制或移動。作為實(shí) 例,此配置中的下行鏈路數(shù)據(jù)路徑可需要從調(diào)制解調(diào)器123到存儲器128的調(diào)制解調(diào)器區(qū) 的第一數(shù)據(jù)移動和從存儲器1 的調(diào)制解調(diào)器區(qū)到存儲器1 的應(yīng)用程序區(qū)的第二數(shù)據(jù)移 動。作為第二實(shí)例,移動裝置120可與經(jīng)由聯(lián)機(jī)鏈路132而與移動裝置120相關(guān)聯(lián)的 經(jīng)聯(lián)機(jī)的計(jì)算機(jī)130協(xié)作來運(yùn)行一個或一個以上嵌入式應(yīng)用程序。經(jīng)聯(lián)機(jī)的計(jì)算機(jī)130 可為任何合適計(jì)算裝置,例如個人計(jì)算機(jī)(PC)、膝上型或平板型計(jì)算機(jī)、PDA、智能電話 等。此外,用以將經(jīng)聯(lián)機(jī)的計(jì)算機(jī)130連接到移動裝置120的聯(lián)機(jī)鏈路132可為USB、火線 (Firewire)、Wi-Fi、藍(lán)牙和/或任何其它合適接口。在此實(shí)例中,移動裝置120和經(jīng)聯(lián)機(jī)的 計(jì)算機(jī)130可具有相異的內(nèi)部或私有因特網(wǎng)協(xié)議(IP)地址,使得移動裝置120可區(qū)分引導(dǎo) 到移動裝置120和/或經(jīng)聯(lián)機(jī)的計(jì)算機(jī)130的IP數(shù)據(jù)流,且相應(yīng)地轉(zhuǎn)發(fā)對應(yīng)的包。另外或 替代地,移動裝置120和經(jīng)聯(lián)機(jī)的計(jì)算機(jī)130可在無線數(shù)據(jù)連接上共享共用公共IP地址和 /或其它網(wǎng)絡(luò)地址。在此實(shí)例中,移動裝置120可經(jīng)配置以監(jiān)視上行鏈路包流,且基于一個 或一個以上網(wǎng)絡(luò)地址翻譯(NAT)操作將內(nèi)部地址和/或端口翻譯為適當(dāng)?shù)囊龅刂泛?或 端口,或反之亦然。下文進(jìn)一步詳細(xì)地描述此些操作。在一個實(shí)例中,移動裝置120使用應(yīng)用程序處理器124執(zhí)行NAT操作,使得需要 將大體上所有數(shù)據(jù)包從存儲器128的調(diào)制解調(diào)器區(qū)傳送到存儲器128的應(yīng)用程序區(qū)。因 此,以與上文描述的嵌入式應(yīng)用程序情境類似的方式,可了解,在調(diào)制解調(diào)器處理器122與 應(yīng)用程序處理器1 之間可能需要至少三次數(shù)據(jù)復(fù)制來進(jìn)行與聯(lián)機(jī)會話相關(guān)聯(lián)的數(shù)據(jù)處 理和傳送。更具體地說,由于輸送層和網(wǎng)絡(luò)協(xié)議層以及NAT操作由應(yīng)用程序處理器IM執(zhí) 行,因此可能要求去往經(jīng)聯(lián)機(jī)的計(jì)算機(jī)130的包在下行鏈路方向上傳送到應(yīng)用程序處理器 124。此外,對于上行鏈路方向,可了解,來自經(jīng)聯(lián)機(jī)的計(jì)算機(jī)130的包可在將包轉(zhuǎn)發(fā)到調(diào)制 解調(diào)器處理器122之前傳送到移動裝置120處的應(yīng)用程序處理器124以用于協(xié)議層處理。 以此方式執(zhí)行過多數(shù)據(jù)復(fù)制可在與移動裝置120相關(guān)聯(lián)的系統(tǒng)總線和外部存儲器上產(chǎn)生 不必要的事務(wù),這可增加功率消耗,花費(fèi)額外的處理器資源,增加端到端延遲且/或以一種 或一種以上其它方式負(fù)面地影響用戶體驗(yàn)。為減輕與常規(guī)共享存儲器系統(tǒng)相關(guān)聯(lián)的上述低效率和/或其它缺點(diǎn),系統(tǒng)100中 的移動裝置120根據(jù)各種方面可包括一個或一個以上外圍模塊126。在一個實(shí)例中,可將外圍模塊126實(shí)施為硬件、軟件和/或獨(dú)立于調(diào)制解調(diào)器處理器122和應(yīng)用程序處理器IM 的其它組件,從而促進(jìn)相關(guān)聯(lián)存儲器128的加速使用。根據(jù)一個方面,外圍模塊1 可由移動裝置120利用以大體減少與調(diào)制解調(diào)器處 理器122與應(yīng)用程序處理器IM之間的數(shù)據(jù)移動相關(guān)聯(lián)的處理開銷。作為實(shí)例,在駐存在 移動裝置120上的嵌入式應(yīng)用程序的情況下,外圍模塊1 可通過在完成任何相關(guān)聯(lián)的空 中接口協(xié)議和/或IP/傳輸控制協(xié)議(TCP) /用戶數(shù)據(jù)報(bào)協(xié)議(UDP)操作之后從存儲器1 的調(diào)制解調(diào)器區(qū)讀取包且將其寫入到存儲器128的應(yīng)用程序區(qū)來促進(jìn)調(diào)制解調(diào)器處理器 122與應(yīng)用程序處理器IM之間僅需要一次數(shù)據(jù)復(fù)制的交互。作為另一實(shí)例,在數(shù)據(jù)服務(wù)于移動裝置120與經(jīng)聯(lián)機(jī)的計(jì)算機(jī)130之間共享的情 況下,外圍模塊1 可將去往經(jīng)聯(lián)機(jī)的計(jì)算機(jī)130的相應(yīng)包移動到聯(lián)機(jī)鏈路132(例如, USB、火線、藍(lán)牙等),通過聯(lián)機(jī)鏈路132,移動裝置120與經(jīng)聯(lián)機(jī)的計(jì)算機(jī)130可直接耦合而 不通過應(yīng)用程序處理器124。因此,可了解,以所述方式利用外圍模塊1 可實(shí)現(xiàn)功率節(jié)約、 增加的CPU(中央處理單元)資源效率、減少的包等待時間和/或其它益處。舉例來說,在 無嵌入式應(yīng)用程序數(shù)據(jù)的情況下,應(yīng)用程序處理器IM可經(jīng)配置以完全不激活以實(shí)現(xiàn)功率 節(jié)約,使得僅要求調(diào)制解調(diào)器處理器122活動以為經(jīng)聯(lián)機(jī)的計(jì)算機(jī)130處理數(shù)據(jù)。在另一實(shí)例中,可將外圍模塊1 實(shí)施為一個或一個以上專用ASIC(專用集成電 路)和/或其它硬件組件,使得需要總線帶寬、處理器資源等的操作(例如,加密、校驗(yàn)和 計(jì)算等)可分組在一起且在專用外圍模塊126中實(shí)施。因此,可從存儲器1 讀取數(shù)據(jù)單 次,其后可即刻將相應(yīng)操作卸載到專用外圍模塊126,來代替對處理器122和/或124加荷 (stressing)0根據(jù)一個方面,外圍模塊1 可由調(diào)制解調(diào)器處理器122和/或任何其它合適組 件配置以促進(jìn)用于網(wǎng)絡(luò)層(例如,IP)和/或輸送層(例如,TCP/UDP)處理(例如,IP濾波 和包轉(zhuǎn)發(fā)、NAT翻譯、IP/TCP/UDP校驗(yàn)和確認(rèn)和計(jì)算等)的一個或一個以上操作。下文進(jìn)一 步詳細(xì)描述可由外圍模塊126執(zhí)行的這些和其它操作的特定實(shí)例。根據(jù)一額外方面,外圍模塊1 可經(jīng)配置以具有對存儲器128的與調(diào)制解調(diào)器處 理器122和應(yīng)用程序處理器IM兩者相關(guān)聯(lián)的區(qū)段的讀取和寫入存取權(quán)。在一個實(shí)例中, 對存儲器128的安全保護(hù)可經(jīng)由存儲器保護(hù)單元(MPU)維持,MPU可實(shí)施跨調(diào)制解調(diào)器處 理器122、應(yīng)用程序處理器IM和/或外圍模塊126的存儲器存取控制。接下來轉(zhuǎn)到圖2,說明系統(tǒng)200,在系統(tǒng)200上在PC 210與移動終端220之間進(jìn)行 實(shí)例聯(lián)機(jī)和網(wǎng)絡(luò)共享程序。然而,應(yīng)了解,雖然系統(tǒng)200說明用于PC和移動終端的實(shí)例網(wǎng) 絡(luò)共享程序,但任何合適計(jì)算裝置均可以與由系統(tǒng)200說明的方式類似的方式來利用聯(lián)機(jī) 和/或網(wǎng)絡(luò)共享。如系統(tǒng)200所說明,經(jīng)由到無線通信系統(tǒng)的連接(通過基站230和/或另一合適實(shí) 體)而能夠接入因特網(wǎng)240和/或另一合適網(wǎng)絡(luò)或網(wǎng)間網(wǎng)絡(luò)的移動終端220可利用網(wǎng)絡(luò)共 享以經(jīng)由私有或局域網(wǎng)215而與一個或一個以上經(jīng)聯(lián)機(jī)的裝置210 (例如,使用USB、Wi-Fi、 藍(lán)牙個人區(qū)域網(wǎng)(PAN)和/或任何其它合適接口連接到移動終端220)共享對因特網(wǎng)240 的接入權(quán)。在一個實(shí)例中,移動終端220可利用聯(lián)機(jī)模塊222來協(xié)調(diào)由與局域網(wǎng)215相關(guān) 聯(lián)的所有裝置經(jīng)由調(diào)制解調(diào)器2M和/或另一合適通信裝置進(jìn)行的去往和/或來自因特網(wǎng) 240的通信。
根據(jù)一個方面,移動終端220可進(jìn)一步包括NAT模塊226,NAT模塊2 可使多個 主機(jī)裝置能夠使用由單個公共IP地址界定的單個網(wǎng)絡(luò)連接來接入例如因特網(wǎng)240等廣域 網(wǎng)(WAN)。舉例來說,在局域網(wǎng)215內(nèi),相應(yīng)的相關(guān)聯(lián)裝置210到220可被指派有識別局域 網(wǎng)215上的相應(yīng)裝置的私有IP地址(例如,192. 168.0. 1,192. 168. 0. 2等),但移動終端 220可將公共IP地址(例如,157. χ. y. ζ等,其中x、y和ζ為0與255之間的整數(shù))用于局 域網(wǎng)215與因特網(wǎng)240之間的通信。因此,如系統(tǒng)200中展示,移動終端220處的NAT模塊 226可通過將包從局域{私有IP地址,端口 }對翻譯為WAN{公共IP地址,端口 }對(且反 之亦然)來啟用局域網(wǎng)215上的裝置與基站230和/或因特網(wǎng)240之間的通信。在一個實(shí) 例中,除IP地址翻譯外或代替IP地址翻譯可執(zhí)行端口翻譯,以防止使用局域網(wǎng)215的裝置 之間的端口沖突。另外或替代地,NAT模塊2 可在翻譯期間對相應(yīng)的包執(zhí)行一個或一個 以上操作,例如執(zhí)行相應(yīng)包的標(biāo)頭內(nèi)的TCP和/或IP校驗(yàn)和調(diào)整,以反映對所述包執(zhí)行的 任何適用IP地址和/或端口翻譯。在另一實(shí)例中,當(dāng)經(jīng)由聯(lián)機(jī)模塊222將經(jīng)聯(lián)機(jī)的數(shù)據(jù)服 務(wù)提供給一個或一個以上裝置210時,可激活NAT模塊226。根據(jù)另一方面,可使移動終端220知曉NAT,使得使用中的全局端口不被指派為用 于新插口的暫時端口值,其中所述新插口使用與移動終端220相關(guān)聯(lián)的全局IP地址。類似 地,移動終端220可形成NAT映射,使得新NAT映射避開正由使用與移動終端220相關(guān)聯(lián)的 全局IP地址的現(xiàn)有插口使用的公共端口。在一個實(shí)例中,如由圖3中的系統(tǒng)300展示,移動計(jì)算裝置可管理與一個或一個以 上其它裝置的網(wǎng)絡(luò)接口共享布置相關(guān)聯(lián)的數(shù)據(jù)和/或控制信息的通信。雖然如圖3中所說 明的系統(tǒng)300的一些元件可與各種移動計(jì)算實(shí)施方案相關(guān)聯(lián),但應(yīng)了解,在系統(tǒng)300內(nèi)說明 的相應(yīng)元件是作為特定非限制性實(shí)例而提供,且除非另有明確陳述,否則所附權(quán)利要求書 無意限于任何特定實(shí)施方案或其組合。在一個實(shí)例中,系統(tǒng)300可由移動計(jì)算裝置和/或任何其它合適計(jì)算裝置實(shí)施,且 可包括應(yīng)用程序處理器310、PC接口 340和調(diào)制解調(diào)器350,其每一者可分別共享系統(tǒng)存儲 器330。根據(jù)一個方面,可利用PC接口 340以結(jié)合網(wǎng)絡(luò)接口共享操作和/或任何其它合適 操作而將一個或一個以上計(jì)算裝置耦合到實(shí)施系統(tǒng)300的裝置。PC接口 340可經(jīng)由USB、 藍(lán)牙、火線和/或任何其它合適接口類型實(shí)施。在一個實(shí)例中,PC接口 340可由與應(yīng)用程 序處理器310相關(guān)聯(lián)的PC接口驅(qū)動器322控制。根據(jù)另一方面,可利用調(diào)制解調(diào)器350來管理去往和/或來自與系統(tǒng)300相關(guān)聯(lián) 的公共通信網(wǎng)絡(luò)的通信。在一個實(shí)例中,調(diào)制解調(diào)器350可由與應(yīng)用程序處理器310相關(guān) 聯(lián)的調(diào)制解調(diào)器驅(qū)動器3M控制。另外或替代地,調(diào)制解調(diào)器處理器、協(xié)議處理驅(qū)動器和/ 或其它合適控制機(jī)構(gòu)可提供于調(diào)制解調(diào)器350內(nèi)和/或結(jié)合調(diào)制解調(diào)器350而提供以促進(jìn) 對調(diào)制解調(diào)器350的控制。在另一實(shí)例中,系統(tǒng)300可包括用于在與系統(tǒng)300相關(guān)聯(lián)的移動裝置與PC和/或 其它合適計(jì)算裝置之間的經(jīng)聯(lián)機(jī)數(shù)據(jù)連接的機(jī)構(gòu)。在此實(shí)例中,應(yīng)用程序處理器310可充 當(dāng)在與調(diào)制解調(diào)器350相關(guān)聯(lián)的調(diào)制解調(diào)器處理器與經(jīng)聯(lián)機(jī)的計(jì)算裝置之間的中間節(jié)點(diǎn), 使得所述經(jīng)聯(lián)機(jī)的裝置為各種數(shù)據(jù)的來源和/或匯集,且一些或所有其余數(shù)據(jù)是源自應(yīng)用 程序處理器310和/或匯集于應(yīng)用程序處理器310處。為實(shí)現(xiàn)這些目的,應(yīng)用程序處理器 310可包括NAT模塊312,NAT模塊312可允許應(yīng)用程序處理器310和經(jīng)聯(lián)機(jī)的裝置兩者經(jīng)由相關(guān)聯(lián)的調(diào)制解調(diào)器處理器共享共用無線連接。在一個實(shí)例中,NAT模塊312可以軟件 形式實(shí)施于應(yīng)用程序處理器310處。另外或替代地,應(yīng)用程序處理器可進(jìn)一步包括TCP/IP 模塊314以促進(jìn)系統(tǒng)300與相關(guān)聯(lián)的公共網(wǎng)絡(luò)之間的數(shù)據(jù)通信所需的包輸送、成幀和/或 任何其它合適操作。當(dāng)系統(tǒng)300中的應(yīng)用程序處理器310充當(dāng)經(jīng)聯(lián)機(jī)的計(jì)算裝置與公共網(wǎng)絡(luò)之間的中 間節(jié)點(diǎn)時,可觀察到系統(tǒng)300經(jīng)配置以路由發(fā)射到公共網(wǎng)絡(luò)和/或從公共網(wǎng)絡(luò)發(fā)射的所有 包。這些包可對應(yīng)于(例如)輸入和/或輸出端點(diǎn)(EP)。然而,如由系統(tǒng)300展示,即使 在去往和/或來自公共網(wǎng)絡(luò)的相應(yīng)包未由實(shí)施系統(tǒng)300的裝置消耗的情況下,仍可能需要 在傳達(dá)所述包之前經(jīng)由應(yīng)用程序處理器310和PC接口 340路由此些包以用于標(biāo)頭更新和 /或其它處理。因此,可了解,傳入或傳出相關(guān)聯(lián)的公共網(wǎng)絡(luò)的大體上所有包均可能需要由 應(yīng)用程序處理器310進(jìn)行處理,這可造成應(yīng)用程序處理器310的過度疲勞、功率使用等。因此,為減輕至少一個上述缺點(diǎn),如由圖4中的系統(tǒng)400說明,可將NAT翻譯和/ 或其它包處理操作從應(yīng)用程序處理器310卸載到一個或一個以上相異模塊。根據(jù)由圖4說 明的一個方面,系統(tǒng)400可包括智能外圍子系統(tǒng)(SPS)模塊460,智能外圍子系統(tǒng)(SPS)模 塊460可包括用于執(zhí)行從應(yīng)用程序處理器310卸載的相應(yīng)操作的一個或一個以上處理器和 /或其它適當(dāng)組件。在一個實(shí)例中,SPS 460可與和經(jīng)聯(lián)機(jī)的計(jì)算裝置相關(guān)聯(lián)的PC接口 340耦合(例 如,經(jīng)由接口控制器442),PC接口 340可充當(dāng)用于所述經(jīng)聯(lián)機(jī)的計(jì)算裝置的具備NAT能力 的經(jīng)聯(lián)機(jī)網(wǎng)絡(luò)連接接口。另外或替代地,SPS 460可與和調(diào)制解調(diào)器350相關(guān)聯(lián)的協(xié)議處理 器452(例如,經(jīng)由協(xié)議控制器456)、可由SPS 460和應(yīng)用程序處理器310接入的共享系統(tǒng) 存儲器330和/或任何其它合適接口耦合?;谶@些關(guān)聯(lián),SPS 460可針對在與系統(tǒng)400相 關(guān)聯(lián)的私有網(wǎng)絡(luò)內(nèi)傳達(dá)的相應(yīng)包執(zhí)行一個或一個以上操作。舉例來說,在檢測到包后,SPS 460即可針對所述包執(zhí)行NAT翻譯,識別所述包的一個或一個以上既定目的地,且在大體上 需要最少交互的情況下將包從應(yīng)用程序處理器310路由到對應(yīng)的目的地適配器。因此,作為實(shí)例,當(dāng)上行鏈路(UL)包到達(dá)PC接口 340時,SPS 460可分析所述包且 識別所述包是既定用于包處理目的地(例如,與應(yīng)用程序處理器310相關(guān)聯(lián)的裝置等)還 是用于經(jīng)翻譯的包目的地(例如,與調(diào)制解調(diào)器350相關(guān)聯(lián)的WAN等)。在識別所述包既定 用于一個或一個以上經(jīng)翻譯的包目的地后,SPS 460即可執(zhí)行NAT翻譯且將所述包直接轉(zhuǎn) 發(fā)到調(diào)制解調(diào)器350和/或任何其它合適目的地,而無需來自應(yīng)用程序處理器310的干預(yù)。 類似地,SPS 460可針對到達(dá)調(diào)制解調(diào)器350的經(jīng)識別為去往與PC接口 340相關(guān)聯(lián)的經(jīng)聯(lián) 機(jī)計(jì)算裝置等的下行鏈路(DL)包而執(zhí)行NAT翻譯和向PC接口 340和/或任何其它合適的 經(jīng)翻譯包目的地的直接轉(zhuǎn)發(fā)。通過以此方式執(zhí)行NAT翻譯和轉(zhuǎn)發(fā),可了解,SPS 460可提供 應(yīng)用程序處理器310處的處理功率、與應(yīng)用程序處理器與SPS 460之間的處理器間通信相 關(guān)聯(lián)的總線帶寬和/或其它性能準(zhǔn)則的顯著節(jié)約。根據(jù)另方面,SPS 460可基于由應(yīng)用程序處理器310提供給SPS 460的一個或一 個以上NAT規(guī)則對相應(yīng)的包執(zhí)行NAT翻譯操作。在一個實(shí)例中,一組NAT規(guī)則可由SPS驅(qū) 動器414配置為從私有IP地址/端口對到公共IP地址/端口對的映射或其它合適映射的 表。在另一實(shí)例中,SPS驅(qū)動器414可至少部分地基于從NAT卸載(OL)驅(qū)動器412接收到 的指令而設(shè)定NAT規(guī)則。
根據(jù)另一方面,SPS驅(qū)動器可經(jīng)配置以識別在與系統(tǒng)400相關(guān)聯(lián)的私有網(wǎng)絡(luò)上的 應(yīng)用程序與調(diào)制解調(diào)器350與之相關(guān)聯(lián)的公共網(wǎng)絡(luò)上的應(yīng)用程序之間進(jìn)行的新連接。在識 別到新連接后,NAT OL驅(qū)動器412即可協(xié)同或獨(dú)立于與應(yīng)用程序處理器310相關(guān)聯(lián)的OS而 起作用,以為新連接設(shè)置NAT翻譯規(guī)則,可隨后將所述NAT翻譯規(guī)則提供給SPS驅(qū)動器414 以中繼到SPS 460。另外或替代地,SPS驅(qū)動器414可經(jīng)配置以識別不再利用對應(yīng)于相應(yīng) NAT規(guī)則的一個或一個以上連接,基于此情形,SPS驅(qū)動器414可指令在SPS 460處移除對 應(yīng)的NAT規(guī)則。在一個實(shí)例中,在NAT規(guī)則于SPS 460處移除后,SPS驅(qū)動器414即可另外 經(jīng)配置以將狀態(tài)信息傳遞到NAT OL驅(qū)動器412,以指示所述NAT規(guī)則不再由SPS 460處置。如系統(tǒng)400中進(jìn)一步說明,SPS 460可包括用于處理UL方向和/或DL方向上的 相應(yīng)包的相應(yīng)組件。在DL方向上,既定用于經(jīng)由PC接口 340連接的裝置的包可最初由協(xié) 議處理器452處理,協(xié)議處理器452可使用濾波塊妨4執(zhí)行對包的濾波和/或如由協(xié)議控 制器456指導(dǎo)的任何其它合適操作。隨后,并非如系統(tǒng)300中所說明將包傳遞到應(yīng)用程序 處理器310,而是將包提供給SPS 460。在于SPS 460處接收到包后,決策塊462即可確定由SPS驅(qū)動器414配置的一個 或一個以上NAT規(guī)則是否與由所述包指定(例如,如由公共IP地址和/或端口指定)的連 接匹配。如果識別到匹配規(guī)則,那么可在NAT塊464處使用所識別的規(guī)則對所述包執(zhí)行NAT 翻譯。另外或替代地,可在開放式系統(tǒng)互連(OSI)第2層(U)包塊466和/或另一合適模 塊處對所述包執(zhí)行L2或鏈路層成幀。否則,如果未發(fā)現(xiàn)匹配NAT規(guī)則,那么決策塊462可 替代地將包傳遞到應(yīng)用程序處理器310以供處理。在處理之后,SPS驅(qū)動器414和/或與應(yīng) 用程序處理器310相關(guān)聯(lián)的一個或一個以上其它組件可任選地產(chǎn)生對應(yīng)于所述包的新NAT 規(guī)則,且促進(jìn)所產(chǎn)生的規(guī)則在SPS 460處的安裝?;跊Q策塊462所進(jìn)行的動作,可利用多 路復(fù)用器(MUX) 468將經(jīng)處理的包從執(zhí)行處理的位置傳遞到PC接口 340以用于繼續(xù)轉(zhuǎn)發(fā)到 適當(dāng)裝置。類似地,在UL方向上,可將在PC接口 340處接收到的既定用于與調(diào)制解調(diào)器350 相關(guān)聯(lián)的公共網(wǎng)絡(luò)的包提供給SPS 460。在到達(dá)SPS 460后,L2剖析塊472和/或另一合 適模塊即可對所述包執(zhí)行L2解幀(de-framing)或剖析,其后可以類似于上文關(guān)于決策塊 462,NAT塊464和多路復(fù)用器468所描述的方式的方式使用決策塊474、NAT塊476和多路 復(fù)用器478經(jīng)由SPS 460路由所述包??呻S后將經(jīng)處理的UL包提供給協(xié)議處理器452,可 由調(diào)制解調(diào)器350將所述包從協(xié)議處理器452傳達(dá)到相關(guān)聯(lián)的公共網(wǎng)絡(luò)。根據(jù)一個方面,SPS 460可利用一個或一個以上L2包塊466、L2剖析塊472和/ 或任何其它合適模塊來對由SPS 460處理的相應(yīng)包進(jìn)行L2成幀和/或解幀。在一個實(shí)例 中,可利用L2包塊466、L2剖析塊472和/或其它類似塊來促進(jìn)與調(diào)制解調(diào)器350與之通 信的網(wǎng)絡(luò)(例如,利用CDMA、UMTS、WLAN、藍(lán)牙等的網(wǎng)絡(luò))和對應(yīng)于PC接口 340的聯(lián)機(jī)鏈路 (例如,USB、火線、Wi-Fi等)相關(guān)聯(lián)的鏈路層協(xié)議和與NAT翻譯相關(guān)聯(lián)的較高級網(wǎng)絡(luò)和輸 送層協(xié)議(例如,OSI第3層(L3)和/或第4層(L4)協(xié)議)之間的互操作性。因此,在一個實(shí)例中,可利用L2剖析塊472來對從PC接口 340接收到的相應(yīng)包執(zhí) 行L2解幀,以便啟用對包含于所述包中的網(wǎng)絡(luò)層和/或輸送層信息的各種處理操作(例 如,NAT翻譯、TCP/IP校驗(yàn)和確認(rèn)和計(jì)算等)。類似地,可利用L2包塊466以根據(jù)與PC接 口 340相關(guān)聯(lián)的一個或一個以上鏈路層協(xié)議對由塊462到464等處理的包執(zhí)行L2成幀,以便促進(jìn)相應(yīng)包的使用。通過以此方式執(zhí)行包剖析和/或包封,可了解,可將400內(nèi)與對應(yīng)于 已知NAT關(guān)系的相應(yīng)包的處理有關(guān)的大體上所有功能卸載到SPS 460,借此使系統(tǒng)400能夠 實(shí)現(xiàn)高數(shù)據(jù)速率,而不會招致應(yīng)用程序處理器310處的費(fèi)用。另外或替代地,雖然未在系統(tǒng)400中展示,但OSI第2層或鏈路層成幀和解幀兩者 可在SPS 460內(nèi)通過(例如)利用在決策塊462之前的L2剖析塊和/或在多路復(fù)用器478 之前的L2包塊來對上行鏈路和/或下行鏈路包而執(zhí)行。可了解,這可進(jìn)行以啟用在PC接 口 340和調(diào)制解調(diào)器350處利用異質(zhì)L2協(xié)議的系統(tǒng)的經(jīng)由SPS 460進(jìn)行的加速包處理。因 此,例如,在上行鏈路或下行鏈路上到達(dá)SPS 460的包可在鏈路層處根據(jù)第一鏈路層協(xié)議 而解幀,在網(wǎng)絡(luò)和/或輸送層級上處理,且隨后在鏈路層處根據(jù)第二相異鏈路層協(xié)議而重 新成幀。根據(jù)另一方面,系統(tǒng)400可選擇代替向SPS 460的卸載處理或除了向SPS 460的 卸載處理之外基于各種準(zhǔn)則將相應(yīng)的包傳遞到應(yīng)用程序處理器310以供處理。舉例來說, 系統(tǒng)400說明可將由調(diào)制解調(diào)器350在下行鏈路上接收到的經(jīng)分段包提供給應(yīng)用程序處理 器310處的調(diào)制解調(diào)器驅(qū)動器324以供重組。在重組之后,對相應(yīng)的經(jīng)重組包的NAT翻譯 和/或其它操作可由應(yīng)用程序處理器310執(zhí)行,或調(diào)制解調(diào)器驅(qū)動器324可替代地將經(jīng)重 組的包卸載到SPS 460以供進(jìn)一步處理。如由系統(tǒng)400進(jìn)一步說明,在PC接口 340和/或應(yīng)用程序處理器310處起源的 相應(yīng)包可(另外或替代地)在應(yīng)用程序處理器310與PC接口 340之間路由,而無需來自 SPS460的干預(yù)。經(jīng)由應(yīng)用程序處理器310路由的包可包括(例如)對應(yīng)于與SPS 460或 NAT卸載接口無關(guān)的端點(diǎn)(例如,控制端點(diǎn))、與相異于NAT卸載接口的接口(例如,診斷 (Diag)接口、美國國家海洋電子協(xié)會(NMEA)接口等)相關(guān)聯(lián)的端點(diǎn)等的包;在于應(yīng)用程序 處理器310上運(yùn)行的應(yīng)用程序正與于PC接口 340與之相關(guān)聯(lián)的裝置上運(yùn)行的應(yīng)用程序通 信而無調(diào)制解調(diào)器350的涉入的情況下對應(yīng)于用于NAT卸載接口的端點(diǎn)的包;和/或任何 其它合適包。在一個實(shí)例中,在將包從PC接口 340轉(zhuǎn)發(fā)到應(yīng)用程序處理器310后,經(jīng)轉(zhuǎn)發(fā) 的包即可由PC接口驅(qū)動器322處理,此后可利用多路復(fù)用器422和/或其它合適裝置選擇 性地將經(jīng)處理的包提供回到PC接口 340和/或到SPS 460以供進(jìn)一步處理。關(guān)于上述實(shí)例,應(yīng)了解,無需將經(jīng)分段包、如系統(tǒng)400中展示直接在PC接口 340與 PC接口驅(qū)動器322之間傳達(dá)的包和/或在系統(tǒng)400內(nèi)傳達(dá)的任何其它包直接提供給應(yīng)用程 序處理器310?;蛘撸闪私?,可將此些包提供給SPS 460以促進(jìn)上文關(guān)于應(yīng)用程序處理器 310而描述的一些或所有處理。接下來參看圖5到圖6,提供相應(yīng)圖式500到600,其說明根據(jù)各種方面的在可與 移動計(jì)算裝置相關(guān)聯(lián)的調(diào)制解調(diào)器處理器502與應(yīng)用程序處理器504之間的實(shí)例信息流。 首先轉(zhuǎn)向圖5中的系統(tǒng)500,可將位于與調(diào)制解調(diào)器處理器502相關(guān)聯(lián)的第一協(xié)議數(shù)據(jù)單元 (PDU)緩沖器512處的相應(yīng)PDU傳遞到標(biāo)頭處理塊514,標(biāo)頭處理塊514可產(chǎn)生對應(yīng)于PDU 的控制信息,且結(jié)合來自PDU緩沖器512的對應(yīng)PDU將所產(chǎn)生的控制信息提交給協(xié)議處理 器518。在接收到相應(yīng)PDU后,協(xié)議處理器518即可對所述PDU執(zhí)行一個或一個以上處理操 作,例如循環(huán)冗余校驗(yàn)(CRC)確認(rèn)、解密等。協(xié)議處理器可接著將經(jīng)處理的PDU提供給第二 PDU緩沖器520,第二 PDU緩沖器520又可將所述PDU轉(zhuǎn)發(fā)到調(diào)制解調(diào)器處理器502與應(yīng)用 程序處理器504所共用的共享緩沖器532。
16
在相應(yīng)PDU到達(dá)共享緩沖器532后,應(yīng)用程序處理器504即可將所述PDU讀取到 一個或一個以上網(wǎng)絡(luò)接口緩沖器討2,網(wǎng)絡(luò)接口緩沖器M2又可將所述PDU轉(zhuǎn)發(fā)到網(wǎng)絡(luò)接口 驅(qū)動器M4。在一個實(shí)例中,網(wǎng)絡(luò)接口驅(qū)動器544可將去往與系統(tǒng)500相關(guān)聯(lián)的裝置的包提 交給駐存在應(yīng)用程序處理器504上的一個或一個以上嵌入式數(shù)據(jù)應(yīng)用程序M6。另外或替 代地,網(wǎng)絡(luò)接口驅(qū)動器544可將去往經(jīng)聯(lián)機(jī)的計(jì)算機(jī)裝置的一個或一個以上包提供給耦合 到所述經(jīng)聯(lián)機(jī)的計(jì)算機(jī)裝置的接口控制器例如,USB控制器、藍(lán)牙控制器等)。如由系統(tǒng)500所說明,為了促進(jìn)數(shù)據(jù)在調(diào)制解調(diào)器處理器502與應(yīng)用程序處理器 504之間的移動,需要三次數(shù)據(jù)移動一從協(xié)議處理器518到PDU緩沖器520、從PDU緩沖器 520到共享緩沖器532以及從共享緩沖器532到網(wǎng)絡(luò)接口緩沖器M2。此外,對于數(shù)據(jù)在調(diào) 制解調(diào)器處理器502與經(jīng)聯(lián)機(jī)的計(jì)算機(jī)裝置之間的傳送,可了解,可需要在網(wǎng)絡(luò)接口緩沖 器542與接口控制器548之間的經(jīng)由網(wǎng)絡(luò)接口驅(qū)動器M4的第四次數(shù)據(jù)移動。鑒于上述內(nèi)容,根據(jù)一個方面,可實(shí)施如圖6中說明的系統(tǒng)600來增加存儲器存取 效率,減少應(yīng)用程序處理器504的負(fù)擔(dān)和/或提供其它益處。如系統(tǒng)600說明,調(diào)制解調(diào)器 處理器502可將相應(yīng)的PDU提供給協(xié)議加速器612,協(xié)議加速器612可嘗試使接收到的PDU 與靜態(tài)下行鏈路NAT映射匹配。在一個實(shí)例中,可將不與協(xié)議加速器612所已知的靜態(tài)映 射匹配的PDU傳遞到一個或若干個網(wǎng)絡(luò)接口緩沖器M2,網(wǎng)絡(luò)接口緩沖器542又可將所述 PDU轉(zhuǎn)發(fā)到應(yīng)用程序處理器504以供進(jìn)一步處理。應(yīng)用程序處理器504可隨后將對應(yīng)于所 述PDU的控制信息提供給NAT模塊616,NAT模塊616可基于控制信息而配置一個或一個以 上新NAT映射,且將經(jīng)配置的NAT映射轉(zhuǎn)發(fā)到SPS處理器614。另外或替代地,可將針對其 發(fā)現(xiàn)靜態(tài)地址/端口映射的相應(yīng)PDU傳遞到SPS處理器614,SPS處理器614可經(jīng)由對應(yīng)的 聯(lián)機(jī)鏈路將PDU轉(zhuǎn)發(fā)到經(jīng)聯(lián)機(jī)的計(jì)算機(jī)618。在一個實(shí)例中,SPS處理器614可進(jìn)一步對相 應(yīng)的PDU執(zhí)行基于一個或一個以上鏈路層協(xié)議(例如,IEEE 802. 3,IEEE 802. 11等)的解 幀、對端口或校驗(yàn)和信息的修改和/或添加,和/或任何其它合適操作。在另一實(shí)例中,SPS 處理器614可將與不再被利用的NAT映射有關(guān)的信息、不與任何已知靜態(tài)NAT映射匹配的 PDU等轉(zhuǎn)發(fā)到NAT模塊616以供轉(zhuǎn)發(fā)到應(yīng)用程序處理器504。因此,可了解,對于協(xié)議加速器612和/或SPS處理器614處針對其而存在DL映 射的PDU,可以比系統(tǒng)500所需的存儲器存取少的所需存儲器存取來執(zhí)行從調(diào)制解調(diào)器處 理器502到經(jīng)聯(lián)機(jī)的計(jì)算機(jī)618的傳送。此外,可觀察到,在此情況下應(yīng)用程序處理器504 實(shí)質(zhì)上不需要進(jìn)行任何操作,借此增加應(yīng)用程序處理器504和系統(tǒng)600的總效率?,F(xiàn)在參看圖7到圖9,說明可根據(jù)本文中所陳述的各種方面而執(zhí)行的方法。雖然為 了闡釋簡單起見將所述方法展示并描述為一系列動作,但應(yīng)理解并了解,所述方法不受動 作次序限制,因?yàn)楦鶕?jù)一個或一個以上方面,一些動作可以與本文所展示和描述的次序不 同的次序發(fā)生和/或與其它動作同時發(fā)生。舉例來說,所屬領(lǐng)域的技術(shù)人員將理解并了解, 可將方法替代地表示為一系列相關(guān)狀態(tài)或事件,例如以狀態(tài)圖的形式。此外,根據(jù)一個或一 個以上方面,并不需要所有所說明的動作來實(shí)施方法。參看圖7,說明用于管理與移動計(jì)算裝置(例如,移動裝置120)相關(guān)聯(lián)的數(shù)據(jù)流的 方法700。將了解,方法700可由(例如)移動計(jì)算裝置和/或與之相關(guān)聯(lián)的一個或一個以 上硬件或軟件組件(例如,外圍模塊126)或任何其它適當(dāng)計(jì)算裝置或裝置組件來執(zhí)行。方 法700在框702開始,其中從應(yīng)用程序處理器(例如,應(yīng)用程序處理器124)接收一組NAT規(guī)則。接下來,在框704處,經(jīng)由第一所耦合的接口(例如,到調(diào)制解調(diào)器123的接口或到 經(jīng)聯(lián)機(jī)的計(jì)算機(jī)130的PC接口)接收包。在框706,可接著嘗試對來自在框702接收到的 規(guī)則的對應(yīng)于在框704接收到的包的NAT規(guī)則的識別。在框708處,確定框706處所嘗試的對匹配NAT規(guī)則的識別是否成功。如果識別 成功,那么方法700可通過以下動作來結(jié)束進(jìn)行到框710,其中使用在框706處成功地識 別的NAT規(guī)則來翻譯在框704處接收到的包;接著進(jìn)行到框712,其中將所述包傳遞到第二 所耦合的接口(例如,在包源自經(jīng)聯(lián)機(jī)的計(jì)算機(jī)的情況下的調(diào)制解調(diào)器接口或反之亦然)。 相比之下,如果框706處的識別不成功,那么方法可替代地通過從框708進(jìn)行到框714而結(jié) 束,在框714中將在框704處接收到的包傳遞到應(yīng)用程序處理器。圖8說明可用于管理與移動計(jì)算環(huán)境相關(guān)聯(lián)的下行鏈路數(shù)據(jù)的實(shí)例方法800。方 法800可由(例如)計(jì)算裝置(例如,經(jīng)由例如SPS 460等一個或一個以上硬件組件及其 子組件)和/或任何其它合適裝置執(zhí)行。方法800在框802處開始,其中從應(yīng)用程序處理 器(例如,經(jīng)由SPS驅(qū)動器414從應(yīng)用程序處理器310)接收一組NAT規(guī)則。接下來,在框 804處,從調(diào)制解調(diào)器子系統(tǒng)接口(例如,與調(diào)制解調(diào)器350相關(guān)聯(lián)的協(xié)議處理器45 接收 下行鏈路包。在框806處,接著嘗試對在框802處接收到的對應(yīng)于在框804處接收到的包 的NAT規(guī)則的識別(例如,通過決策塊462)。根據(jù)一個方面,方法800可在框808處基于框806處的所嘗試識別的結(jié)果而出現(xiàn) 分支。舉例來說,如果在框806處成功地識別NAT規(guī)則,那么方法800可從框808進(jìn)行到框 810,其中使用所識別的NAT規(guī)則來翻譯在框802處接收到的包(例如,通過NAT塊464); 接著進(jìn)行到框812,其中對所述包執(zhí)行第2層成幀(例如,通過L2包塊466)。方法800可 接著在框818處結(jié)束,其中將所述包轉(zhuǎn)發(fā)(例如,通過MUX 468)到與經(jīng)聯(lián)機(jī)的計(jì)算機(jī)相關(guān) 聯(lián)的所耦合的接口(例如,PC接口 340)?;蛘撸绻诳?06處未成功地識別NAT規(guī)則,那么方法800可從框808進(jìn)行到框 814,其中將在框802處接收到的包轉(zhuǎn)發(fā)到應(yīng)用程序處理器以供進(jìn)一步處理。方法800可接 著從框814結(jié)束,或可任選地進(jìn)行到框816,其中將在框814處轉(zhuǎn)發(fā)到應(yīng)用程序處理器的包 在處理之后從應(yīng)用程序處理器收回。在完成框816處描述的動作后,方法800即可接著在 如上文描述的框818處結(jié)束。轉(zhuǎn)向圖9,說明用于管理與移動計(jì)算環(huán)境相關(guān)聯(lián)的上行鏈路數(shù)據(jù)的方法900。將了 解,方法900可由任何合適計(jì)算裝置和/或與計(jì)算裝置有關(guān)的子組件執(zhí)行。方法900在框 902處開始,其中從應(yīng)用程序處理器接收一組NAT規(guī)則。接下來,在框904處,從與經(jīng)聯(lián)機(jī)的 計(jì)算機(jī)相關(guān)聯(lián)的所耦合的接口接收上行鏈路包??山又诳?06處對在框904處接收到的 包執(zhí)行第2層剖析(例如,通過L2剖析塊47 ,且可隨后在框908處嘗試對在框902處接 收到的對應(yīng)于在框1404處接收到的包的NAT規(guī)則的識別(例如,通過決策塊474)。如圖9中展示,方法900可在框910處基于框908處的所嘗試識別的結(jié)果而出現(xiàn) 分支。因此,在于框908處NAT規(guī)則的成功識別后,方法900即可從框910進(jìn)行到框912, 其中使用所識別的NAT規(guī)則來翻譯在框902處接收到的包(例如,通過NAT塊476)。方法 900可接著在框914處結(jié)束,其中將所述包轉(zhuǎn)發(fā)(例如,通過MUX 478)到調(diào)制解調(diào)器接口?;蛘?,在于框908處識別NAT規(guī)則的不成功嘗試后,方法900可從框910進(jìn)行到框 916,其中將在框902處接收到的包轉(zhuǎn)發(fā)到應(yīng)用程序處理器以供進(jìn)一步處理。方法900可在框916處描述的動作之后結(jié)束,或可任選地進(jìn)行到框918,其中在處理之后包從應(yīng)用程序處 理器返回。在完成框918中描述的動作之后,方法900可如上文所描述在框914處結(jié)束。圖10說明促進(jìn)網(wǎng)絡(luò)接口共享應(yīng)用程序的數(shù)據(jù)服務(wù)管理的設(shè)備1000。將了解,可將 設(shè)備1000表示為包括功能塊,所述功能塊可為表示由處理器、軟件或其組合(例如,固件) 實(shí)施的功能的功能塊。設(shè)備1000可由任何合適計(jì)算裝置(例如,移動裝置120)和/或其組 件(例如,外圍模塊126)實(shí)施,且可包括用于從相關(guān)聯(lián)的應(yīng)用程序處理器接收NAT映射規(guī) 則的模塊1002、用于識別經(jīng)由第一接口獲得的包的模塊1004、用于嘗試所識別的包與相應(yīng) 的所接收NAT映射規(guī)則的匹配的模塊1006、用于在成功的所嘗試匹配后即刻根據(jù)匹配NAT 映射規(guī)則翻譯所述包且將所述包引導(dǎo)到第二接口的模塊1008,以及用于在不成功的所嘗試 匹配后即刻將包引導(dǎo)到應(yīng)用程序處理器的模塊1010?,F(xiàn)在參看圖11,根據(jù)各種方面提供無線多址通信系統(tǒng)的說明。在一個實(shí)例中,接入 點(diǎn)IlOO(AP)包括多個天線群組。如圖11中所說明,一個天線群組可包括天線1104和1106, 另一天線群組可包括天線1108和1110,且另一天線群組可包括天線1112和1114。雖然在 圖11中針對每一天線群組僅展示兩個天線,但應(yīng)了解,更多或更少天線可用于每一天線群 組。在另一實(shí)例中,接入終端1116可與天線1112和1114通信,其中天線1112和1114經(jīng) 由前向鏈路1120將信息發(fā)射到接入終端1116,且經(jīng)由反向鏈路1118從接入終端1116接 收信息。另外和/或替代地,接入終端1122可與天線1106和1108通信,其中天線1106和 1108經(jīng)由前向鏈路11 將信息發(fā)射到接入終端1122,且經(jīng)由反向鏈路IlM從接入終端 1122接收信息。在另一實(shí)例中,接入終端1116和/或1122可耦合到相應(yīng)的計(jì)算裝置,且可 操作以經(jīng)由本文中大體描述的一個或一個以上數(shù)據(jù)服務(wù)共享技術(shù)而提供經(jīng)耦合計(jì)算裝置 與接入點(diǎn)1100或接入點(diǎn)1100與之相關(guān)聯(lián)的核心網(wǎng)絡(luò)或網(wǎng)間網(wǎng)絡(luò)之間的連接性。在頻分雙 工系統(tǒng)中,通信鏈路1118、1120、11M和11 可使用不同頻率來進(jìn)行通信。舉例來說,前向 鏈路1120可使用不同于反向鏈路1118所使用頻率的頻率。每一天線群組和/或所述天線經(jīng)設(shè)計(jì)以在其中進(jìn)行通信的區(qū)域可被稱為接入點(diǎn) 的扇區(qū)。根據(jù)一個方面,天線群組可經(jīng)設(shè)計(jì)以在由接入點(diǎn)1100所覆蓋的區(qū)域的扇區(qū)中向接 入終端通信。在經(jīng)由前向鏈路1120和11 的通信中,接入點(diǎn)1100的發(fā)射天線可利用波束 成形,以便改進(jìn)不同接入終端1111和1122的前向鏈路的信噪比。此外,使用波束成形向隨 機(jī)散布于其覆蓋范圍中的接入終端發(fā)射的接入點(diǎn)與經(jīng)由單個天線向其所有接入終端發(fā)射 的接入點(diǎn)相比,對相鄰小區(qū)中的接入終端引起較少干擾。接入點(diǎn)(例如,接入點(diǎn)1100)可為用于與終端通信的固定臺,且還可稱為基站、 eNB、接入網(wǎng)絡(luò)和/或其它合適術(shù)語。此外,接入終端(例如,接入終端1116或112 也可 稱為移動終端、用戶設(shè)備、無線通信裝置、終端、無線終端和/或其它適當(dāng)術(shù)語。轉(zhuǎn)向圖12,說明可在其中實(shí)施本文中所描述的各種方面的實(shí)例計(jì)算系統(tǒng)或操作環(huán) 境。所屬領(lǐng)域的技術(shù)人員可了解,預(yù)期手持式、便攜式和其它計(jì)算裝置以及所有種類的計(jì)算 對象結(jié)合所主張的標(biāo)的物而使用,例如在可合意配置網(wǎng)絡(luò)的任何地方。因此,下文在圖12 中描述的以下通用計(jì)算系統(tǒng)僅為可實(shí)施所主張的標(biāo)的物的計(jì)算系統(tǒng)的一個實(shí)例。如圖12中展示,可用于實(shí)施本文中所描述的各種方面的計(jì)算環(huán)境1200的實(shí)例包 括呈計(jì)算機(jī)1210的形式的通用計(jì)算裝置。計(jì)算機(jī)1210的組件可包括(但不限于)一個或 一個以上處理單元1220、系統(tǒng)存儲器1230和將包括系統(tǒng)存儲器1230在內(nèi)的各種系統(tǒng)組件耦合到處理單元1220的系統(tǒng)總線1221。系統(tǒng)總線1221可為若干類型的總線結(jié)構(gòu)(包括存 儲器總線或存儲器控制器、外圍總線和使用多種總線架構(gòu)中的任一者的局部總線)中的任一者。在一個實(shí)例中,系統(tǒng)存儲器1230可使用易失性和/或非易失性存儲器(例如,只 讀存儲器(ROM)和/或隨機(jī)存取存儲器(RAM))來實(shí)施。含有有助于在計(jì)算機(jī)1210內(nèi)的元 件之間傳送信息(例如,在啟動期間)的基本例程的基本輸入/輸出系統(tǒng)(BIOS)可存儲在 存儲器1230中。存儲器1230還可含有可由處理單元1220立即存取和/或當(dāng)前正由處理 單元1220操作的數(shù)據(jù)和/或程序模塊。作為非限制性實(shí)例,存儲器1230還可包括操作系 統(tǒng)、應(yīng)用程序、其它程序模塊和程序數(shù)據(jù)。此外,計(jì)算機(jī)1210可包括其它計(jì)算機(jī)存儲媒體,所述計(jì)算機(jī)存儲媒體可為可裝卸 或非可裝卸的,以及易失性或非易失性的。舉例來說,計(jì)算機(jī)1210可包括硬盤驅(qū)動器,其 從非可裝卸、非易失性磁性媒體讀取或向非可裝卸、非易失性磁性媒體寫入;磁盤驅(qū)動器, 其從可裝卸、非易失性磁盤讀取或向可裝卸、非易失性磁盤寫入;光盤驅(qū)動器,其從可裝卸、 非易失性光盤(例如CD-ROM或其它光學(xué)媒體)讀取或向可裝卸、非易失性光盤寫入;等等。 可使用的其它計(jì)算機(jī)存儲媒體包括卡式磁帶、快閃存儲器卡、數(shù)字化多功能光盤、數(shù)字錄像 帶、固態(tài)RAM、固態(tài)ROM等。在另一實(shí)例中,用戶可經(jīng)由例如小鍵盤或鍵盤等輸入裝置;例如鼠標(biāo)、軌跡球、觸 摸板、觸摸屏等指點(diǎn)裝置;麥克風(fēng);相機(jī)或光學(xué)傳感器;和/或任何其它合適的輸入裝置將 命令和信息輸入到計(jì)算機(jī)1210中。與計(jì)算機(jī)1210相關(guān)聯(lián)的輸入裝置可經(jīng)由輸入接口 1240 連接到處理單元1220。輸入接口 1240可以任何合適方式實(shí)施,例如并行端口、通用串行總 線(USB)端口等。另外或替代地,監(jiān)視器、顯示屏幕、揚(yáng)聲器和/或任何其它合適輸出裝置 可經(jīng)由輸出接口 1250連接到系統(tǒng)總線1221,輸出接口 1250又可與處理單元1220、系統(tǒng)存 儲器1230和/或計(jì)算機(jī)1210的任何其它合適組件通信。根據(jù)一個方面,計(jì)算機(jī)1210可使用到一個或一個以上其它遠(yuǎn)程計(jì)算機(jī)(例如,遠(yuǎn) 程計(jì)算機(jī)1270)的邏輯連接在連網(wǎng)環(huán)境中操作。遠(yuǎn)程計(jì)算機(jī)1270可為個人計(jì)算機(jī)、服務(wù)器、 路由器、網(wǎng)絡(luò)PC、對等裝置或其它常見網(wǎng)絡(luò)節(jié)點(diǎn)和/或任何其它遠(yuǎn)程媒體消耗或發(fā)射裝置, 且可包括上文關(guān)于計(jì)算機(jī)1210而描述的元件中的任一或所有元件。在一個實(shí)例中,計(jì)算機(jī) 1210和遠(yuǎn)程計(jì)算機(jī)1270可經(jīng)由網(wǎng)絡(luò)或子網(wǎng)1271而耦合。另外,計(jì)算機(jī)1210可經(jīng)由網(wǎng)絡(luò) 適配器1260促進(jìn)到遠(yuǎn)程計(jì)算機(jī)1270和/或通信網(wǎng)絡(luò)或網(wǎng)間網(wǎng)絡(luò)的連接。因此,在計(jì)算機(jī) 1210與遠(yuǎn)程計(jì)算機(jī)1270和因特網(wǎng)兩者相關(guān)聯(lián)的情況下,計(jì)算機(jī)1210可利用一種或一種以 上技術(shù)來使遠(yuǎn)程計(jì)算機(jī)1270能夠如上文大體描述那樣利用其到因特網(wǎng)的連接。將理解,本文中所描述的方面可由硬件、軟件、固件、中間體、微碼或其任一組合來 實(shí)施。當(dāng)系統(tǒng)和/或方法以軟件、固件、中間體或微碼、程序代碼或代碼段實(shí)施時,其可存儲 在例如存儲組件等機(jī)器可讀媒體中。代碼段可表示過程、函數(shù)、子程序、程序、例程、子例程、 模塊、軟件包、類,或指令、數(shù)據(jù)結(jié)構(gòu)或程序語句的任一組合??赏ㄟ^傳遞和/或接收信息、 數(shù)據(jù)、自變量、參數(shù)或存儲器內(nèi)容而將代碼段耦合到另一代碼段或硬件電路??墒褂冒ù?儲器共享、消息傳遞、令牌傳遞、網(wǎng)絡(luò)傳輸?shù)鹊娜魏魏线m手段來傳遞、轉(zhuǎn)發(fā)或傳輸信息、自變 量、參數(shù)、數(shù)據(jù)等。對于軟件實(shí)施方案,可用執(zhí)行本文中所描述的功能的模塊(例如,過程、函數(shù)等)來實(shí)施本文中所描述的技術(shù)。軟件代碼可存儲在存儲器單元中且由處理器執(zhí)行。存儲器單 元可在處理器內(nèi)或處理器外實(shí)施,在后一種情況下,存儲器單元可經(jīng)由此項(xiàng)技術(shù)中已知的 各種手段以通信方式耦合到處理器。 上文已描述的內(nèi)容包括一個或一個以上方面的實(shí)例。當(dāng)然,不可能為了描述前述 方面而描述組件或方法的每個可想到的組合,但所屬領(lǐng)域的技術(shù)人員可認(rèn)識到,各種方面 的許多進(jìn)一步組合和排列是可能的。因此,所描述的方面既定包含屬于所附權(quán)利要求書的 精神和范圍的所有此些更改、修改和變化。此外,就術(shù)語“包括”在具體實(shí)施方式
或所附權(quán) 利要求書中使用來說,此術(shù)語既定如“包含”在被用作權(quán)利要求中的過渡詞時被解釋的那樣 以類似于術(shù)語“包含”的方式包括在內(nèi)。此外,用于具體實(shí)施方式
或所附權(quán)利要求書中的術(shù) 語“或”意在為“非排它性或”。
權(quán)利要求
1.一種方法,其包含從應(yīng)用程序處理器接收一個或一個以上網(wǎng)絡(luò)地址翻譯(NAT)規(guī)則; 在所耦合的接口上獲得包;嘗試對從所述應(yīng)用程序處理器接收的對應(yīng)于所述所獲得的包的NAT規(guī)則的識別; 在成功的識別嘗試后,即刻根據(jù)所識別的NAT規(guī)則來翻譯所述所獲得的包,且將所述 經(jīng)翻譯的包轉(zhuǎn)發(fā)到一個或一個以上經(jīng)翻譯包目的地;以及在不成功的識別嘗試后,即刻將所述所獲得的包轉(zhuǎn)發(fā)到一個或一個以上包處理目的地。
2.根據(jù)權(quán)利要求1所述的方法,其中所述方法進(jìn)一步包含以下動作中的一者或一者以上在對NAT規(guī)則的所嘗試識別之前,根據(jù)鏈路層協(xié)議來處理所述所獲得的包;或 在將所述經(jīng)翻譯的包轉(zhuǎn)發(fā)到所述一個或一個以上經(jīng)翻譯包目的地之前,根據(jù)鏈路層協(xié) 議來處理所述經(jīng)翻譯的包。
3.根據(jù)權(quán)利要求2所述的方法,其中所述獲得包含在所述所耦合的接口上獲得使用鏈路層協(xié)議而構(gòu)造的包;且 所述處理所述所獲得的包包含剖析所述所獲得的包以識別對應(yīng)于網(wǎng)絡(luò)層或輸送層中 的一者或一者以上的包信息。
4.根據(jù)權(quán)利要求1所述的方法,其中所述處理所述經(jīng)翻譯的包包含根據(jù)鏈路層協(xié)議使 所述經(jīng)翻譯的包成幀。
5.根據(jù)權(quán)利要求1所述的方法,其中所述所耦合的接口包含與調(diào)制解調(diào)器相關(guān)聯(lián)的協(xié) 議處理器,且所述一個或一個以上經(jīng)翻譯包目的地包含經(jīng)啟用以由相關(guān)聯(lián)的經(jīng)聯(lián)機(jī)計(jì)算裝 置使用的具備NAT能力的經(jīng)聯(lián)機(jī)網(wǎng)絡(luò)連接接口。
6.根據(jù)權(quán)利要求5所述的方法,其中所述獲得包含 識別所述調(diào)制解調(diào)器所連接到的公共網(wǎng)絡(luò);以及 在所述調(diào)制解調(diào)器處從所述所識別的公共網(wǎng)絡(luò)獲得包。
7.根據(jù)權(quán)利要求6所述的方法,其中所述獲得進(jìn)一步包含經(jīng)由所述調(diào)制解調(diào)器從所述 公共網(wǎng)絡(luò)以多個片段的形式獲得所述包。
8.根據(jù)權(quán)利要求7所述的方法,其進(jìn)一步包含在嘗試對NAT規(guī)則的識別之前將相應(yīng)的 所獲得片段轉(zhuǎn)發(fā)到所述一個或一個以上包處理目的地。
9.根據(jù)權(quán)利要求7所述的方法,其進(jìn)一步包含在嘗試對NAT規(guī)則的識別之前從其相應(yīng) 片段重構(gòu)所述所獲得的包。
10.根據(jù)權(quán)利要求5所述的方法,其中所述方法進(jìn)一步包含識別所述所獲得的包的標(biāo)頭中所指定的公共地址和端口 ;且 所述嘗試對NAT規(guī)則的識別包含嘗試識別指定包含用戶數(shù)據(jù)報(bào)協(xié)議(UDP)或傳輸控制 協(xié)議(TCP)中的一者或一者以上的輸送協(xié)議和對應(yīng)于所述所識別的公共地址和端口的私 有地址和端口的NAT規(guī)則。
11.根據(jù)權(quán)利要求10所述的方法,其中所述翻譯包含修改所述所獲得的包的所述標(biāo)頭以指定由所述所識別的NAT規(guī)則給出的所述私有地 址和端口 ;以及更新所述所獲得的包的所述標(biāo)頭中的校驗(yàn)和,以反映所述私有地址和端口。
12.根據(jù)權(quán)利要求1所述的方法,其中所述所耦合的接口為經(jīng)啟用以由經(jīng)聯(lián)機(jī)的計(jì)算 裝置使用的網(wǎng)絡(luò)連接接口,且所述一個或一個以上經(jīng)翻譯包目的地包含與調(diào)制解調(diào)器相關(guān) 聯(lián)的接口。
13.根據(jù)權(quán)利要求12所述的方法,其中所述獲得包含經(jīng)由所述網(wǎng)絡(luò)連接接口從所述經(jīng) 聯(lián)機(jī)的計(jì)算裝置獲得包。
14.根據(jù)權(quán)利要求12所述的方法,其中所述方法進(jìn)一步包含識別所述所獲得的包的標(biāo)頭中所指定的私有地址和端口 ;且所述嘗試對NAT規(guī)則的識別包含嘗試識別根據(jù)包含UDP或TCP中的一者或一者以上的 輸送協(xié)議而指定對應(yīng)于所述所識別的私有地址和端口的公共地址和端口的NAT規(guī)則。
15.根據(jù)權(quán)利要求14所述的方法,其中應(yīng)用所識別的NAT規(guī)則包含修改所述所獲得的包的所述標(biāo)頭以指定由所述所識別的NAT規(guī)則給出的所述公共地 址和端口 ;以及更新所述所獲得的包的所述標(biāo)頭中的校驗(yàn)和,以反映所述公共地址和端口。
16.根據(jù)權(quán)利要求1所述的方法,其進(jìn)一步包含識別由所述所耦合的接口處的所述所獲得的包指定的目的地;以及在由所述所獲得的包指定的所述目的地與所述應(yīng)用程序處理器相關(guān)聯(lián)的情況下,在嘗 試對NAT規(guī)則的識別之前,將所述所獲得的包從第一所耦合的接口轉(zhuǎn)發(fā)到所述應(yīng)用程序處 理器。
17.根據(jù)權(quán)利要求1所述的方法,其中所述一個或一個以上包處理目的地包含所述應(yīng) 用程序處理器。
18.—種移動計(jì)算設(shè)備,其包含存儲器,其存儲與由應(yīng)用程序處理器提供的一個或一個以上網(wǎng)絡(luò)地址翻譯(NAT)規(guī)則 有關(guān)的數(shù)據(jù);以及耦合到所述存儲器的至少一個處理器,其與所述應(yīng)用程序處理器相異,所述至少一個 處理器經(jīng)配置以在所耦合的接口上接收包,嘗試對對應(yīng)于所述所接收的包的NAT規(guī)則的識 別,在NAT規(guī)則的成功識別后即刻根據(jù)所識別的NAT規(guī)則來翻譯所述所接收的包且將所述 經(jīng)翻譯的包轉(zhuǎn)發(fā)到至少一個經(jīng)翻譯包目的地,且在NAT規(guī)則的不成功識別后即刻將所述所 接收的包轉(zhuǎn)發(fā)到至少一個包處理目的地。
19.根據(jù)權(quán)利要求18所述的移動計(jì)算設(shè)備,其中所述至少一個處理器進(jìn)一步經(jīng)配置以 執(zhí)行以下動作中的至少一者在嘗試對NAT規(guī)則的識別之前,根據(jù)開放式系統(tǒng)互連(OSI)第 2層(U)協(xié)議來處理所述所接收的包;或在將所述經(jīng)翻譯的包轉(zhuǎn)發(fā)到所述至少一個包處理 目的地之前,根據(jù)L2協(xié)議來處理所述經(jīng)翻譯的包。
20.根據(jù)權(quán)利要求19所述的移動計(jì)算設(shè)備,其中所述至少一個處理器進(jìn)一步經(jīng)配置以 在所述所耦合的接口上接收使用L2協(xié)議構(gòu)造的包,且至少部分地通過對所述所接收的包 執(zhí)行L2解幀來處理所述所接收的包以促進(jìn)對包含于所述所接收的包內(nèi)的第3層(U)或第 4層(L4)信息中的一者或一者以上的操作。
21.根據(jù)權(quán)利要求19所述的移動計(jì)算設(shè)備,其中所述至少一個處理器進(jìn)一步經(jīng)配置以 至少部分地通過根據(jù)L2協(xié)議使所述經(jīng)翻譯的包成幀來處理所述經(jīng)翻譯的包。
22.根據(jù)權(quán)利要求18所述的移動計(jì)算設(shè)備,其中所述所耦合的接口為與調(diào)制解調(diào)器相 關(guān)聯(lián)的協(xié)議處理器接口,且所述至少一個經(jīng)翻譯包目的地包含與經(jīng)啟用以由相關(guān)聯(lián)的經(jīng)聯(lián) 機(jī)計(jì)算裝置使用的聯(lián)機(jī)鏈路相關(guān)聯(lián)的網(wǎng)絡(luò)連接接口。
23.根據(jù)權(quán)利要求22所述的移動計(jì)算設(shè)備,其中所述至少一個處理器進(jìn)一步經(jīng)配置以 識別所述所接收的包的標(biāo)頭中所指定的公共地址和端口,且至少部分地通過嘗試識別指定 包含用戶數(shù)據(jù)報(bào)協(xié)議(UDP)或傳輸控制協(xié)議(TCP)中的一者或一者以上的輸送協(xié)議和對應(yīng) 于所述所識別的公共地址和端口的私有地址和端口的NAT規(guī)則,來嘗試對NAT規(guī)則的識別。
24.根據(jù)權(quán)利要求23所述的移動計(jì)算設(shè)備,其中所述至少一個處理器進(jìn)一步經(jīng)配置以 至少部分地通過修改所述所接收的包的所述標(biāo)頭以指定由所識別的NAT規(guī)則給出的所述 所識別的私有地址和端口和更新所述所接收的包的所述標(biāo)頭中的校驗(yàn)和以反映所述私有 地址和端口,來應(yīng)用所述所識別的NAT規(guī)則。
25.根據(jù)權(quán)利要求18所述的移動計(jì)算設(shè)備,其中所述所耦合的接口為與經(jīng)聯(lián)機(jī)的計(jì)算 裝置相關(guān)聯(lián)的網(wǎng)絡(luò)連接接口,且所述至少一個經(jīng)翻譯包目的地包含與調(diào)制解調(diào)器相關(guān)聯(lián)的 接口。
26.根據(jù)權(quán)利要求25所述的移動計(jì)算設(shè)備,其中所述至少一個處理器進(jìn)一步經(jīng)配置以 經(jīng)由所述網(wǎng)絡(luò)連接接口從所述經(jīng)聯(lián)機(jī)的計(jì)算裝置接收包。
27.根據(jù)權(quán)利要求25所述的移動計(jì)算設(shè)備,其中所述至少一個處理器進(jìn)一步經(jīng)配置以 識別所述所接收的包的標(biāo)頭中所指定的私有地址和端口,且至少部分地通過嘗試識別根據(jù) 包含UDP或TCP中的一者或一者以上的輸送協(xié)議而指定對應(yīng)于所述所識別的私有地址和端 口的公共地址和端口的NAT規(guī)則,來嘗試對NAT規(guī)則的識別。
28.根據(jù)權(quán)利要求27所述的移動計(jì)算設(shè)備,其中所述至少一個處理器進(jìn)一步經(jīng)配置以 至少部分地通過修改所述所接收的包的所述標(biāo)頭以指定由所識別的NAT規(guī)則給出的所述 所識別的公共地址和端口和更新所述所接收的包的所述標(biāo)頭中的校驗(yàn)和以反映所述公共 地址和端口,來應(yīng)用所述所識別的NAT規(guī)則。
29.根據(jù)權(quán)利要求25所述的移動計(jì)算設(shè)備,其中所述至少一個處理器進(jìn)一步經(jīng)配置以 識別所述所接收的包的終止點(diǎn),且在所述所接收的包的所述終止點(diǎn)與所述應(yīng)用程序處理器 相關(guān)聯(lián)的情況下,在嘗試對NAT規(guī)則的識別之前,將所述所接收的包從所述所耦合的接口 轉(zhuǎn)發(fā)到所述應(yīng)用程序處理器。
30.根據(jù)權(quán)利要求18所述的移動計(jì)算設(shè)備,其中所述至少一個包處理目的地包含所述 應(yīng)用程序處理器。
31.一種設(shè)備,其包含用于從相關(guān)聯(lián)的應(yīng)用程序處理器接收相應(yīng)的網(wǎng)絡(luò)地址翻譯(NAT)映射規(guī)則的裝置;用于識別經(jīng)由接口獲得的包的裝置;用于嘗試使所述所識別的包與所接收的NAT映射規(guī)則匹配的裝置;用于在成功的所嘗試匹配后即刻根據(jù)匹配NAT映射規(guī)則來翻譯所述所識別的包的裝置;用于在應(yīng)用所述匹配NAT映射規(guī)則后即刻將所述經(jīng)翻譯的包引導(dǎo)到一個或一個以上 經(jīng)翻譯包目的地的裝置;以及用于在不成功的所嘗試匹配后即刻將所述所識別的包引導(dǎo)到一個或一個以上包處理目的地的裝置。
32.根據(jù)權(quán)利要求31所述的設(shè)備,其進(jìn)一步包含用于在所述用于嘗試匹配的裝置的操 作之前對所述所識別的包執(zhí)行鏈路層處理的裝置。
33.根據(jù)權(quán)利要求31所述的設(shè)備,其進(jìn)一步包含用于在所述用于將所述經(jīng)翻譯的包引 導(dǎo)到所述一個或一個以上經(jīng)翻譯包目的地的裝置的操作之前對所述經(jīng)翻譯的包執(zhí)行鏈路層處理的裝置。
34.根據(jù)權(quán)利要求31所述的設(shè)備,其中所述接口與調(diào)制解調(diào)器相關(guān)聯(lián),且至少一個經(jīng) 翻譯包目的地與經(jīng)聯(lián)機(jī)計(jì)算裝置相關(guān)聯(lián)。
35.根據(jù)權(quán)利要求34所述的設(shè)備,其中所述用于識別的裝置包含用于識別所述調(diào)制解調(diào)器所連接到的公共網(wǎng)絡(luò)的裝置;以及用于識別由所述調(diào)制解調(diào)器經(jīng)由所述所識別的公共網(wǎng)絡(luò)接收的包的裝置。
36.根據(jù)權(quán)利要求34所述的設(shè)備,其中所述設(shè)備進(jìn)一步包含用于識別所述所識別的包的標(biāo)頭中所指定的公共地址和端口的 裝置;且所述用于嘗試匹配的裝置包含用于嘗試對指定包含用戶數(shù)據(jù)報(bào)協(xié)議(UDP)或傳輸控 制協(xié)議(TCP)中的一者或一者以上的輸送協(xié)議以及對應(yīng)于所述所識別的公共地址和端口 的私有地址和端口的NAT映射規(guī)則的識別的裝置。
37.根據(jù)權(quán)利要求36所述的設(shè)備,其中所述用于翻譯的裝置包含用于修改所述所識別的包的所述標(biāo)頭以使得所述標(biāo)頭指定由所述所識別的NAT映射 規(guī)則給出的所述私有地址和端口的裝置;以及用于基于由所述所識別的NAT映射規(guī)則給出的所述私有地址和端口而修改所述所識 別的包的所述標(biāo)頭中的校驗(yàn)和的裝置。
38.根據(jù)權(quán)利要求31所述的設(shè)備,其中所述接口與經(jīng)聯(lián)機(jī)的計(jì)算裝置相關(guān)聯(lián),且至少 一個經(jīng)翻譯包目的地與調(diào)制解調(diào)器相關(guān)聯(lián)。
39.根據(jù)權(quán)利要求38所述的設(shè)備,其中所述用于識別的裝置包含用于識別由所述經(jīng)聯(lián) 機(jī)計(jì)算裝置傳達(dá)的包的裝置。
40.根據(jù)權(quán)利要求38所述的設(shè)備,其中所述設(shè)備進(jìn)一步包含用于識別所述所識別的包的標(biāo)頭中所指定的私有地址和端口的 裝置;且所述用于嘗試匹配的裝置包含用于嘗試對根據(jù)包含UDP或TCP中的一者或一者以上的 輸送協(xié)議而指定對應(yīng)于所述所識別的私有地址和端口的公共地址和端口的NAT映射規(guī)則 的識別的裝置。
41.根據(jù)權(quán)利要求40所述的設(shè)備,其中所述用于翻譯的裝置包含用于修改所述所識別的包的所述標(biāo)頭以使得所述標(biāo)頭指定由所述所識別的NAT映射 規(guī)則給出的所述公共地址和端口的裝置;以及用于基于由所述所識別的NAT映射規(guī)則給出的所述公共地址和端口而修改所述所識 別的包的所述標(biāo)頭中的校驗(yàn)和的裝置。
42.根據(jù)權(quán)利要求31所述的設(shè)備,其中至少一個包處理目的地包含所述應(yīng)用程序處理
43.一種集成電路,其執(zhí)行機(jī)器可執(zhí)行指令,所述指令包含從相關(guān)聯(lián)的應(yīng)用程序處理器接收相應(yīng)的網(wǎng)絡(luò)地址翻譯(NAT)映射規(guī)則; 識別經(jīng)由接口獲得的包;嘗試使所述所識別的包與相應(yīng)的NAT映射規(guī)則匹配; 在成功的所嘗試匹配后即刻根據(jù)匹配NAT映射規(guī)則來翻譯所述所識別的包; 在應(yīng)用匹配NAT映射規(guī)則后即刻將所述經(jīng)翻譯的包引導(dǎo)到一個或一個以上經(jīng)翻譯包 目的地;以及在不成功的所嘗試匹配后即刻將所述所識別的包引導(dǎo)到一個或一個以上包處理目的地。
44.根據(jù)權(quán)利要求43所述的集成電路,其中所述指令進(jìn)一步包含在嘗試使所述所識別 的包與相應(yīng)的NAT映射規(guī)則匹配之前,對所述所識別的包執(zhí)行開放式系統(tǒng)互連(OSI)第2 層(L2)處理。
45.根據(jù)權(quán)利要求43所述的集成電路,其中所述指令進(jìn)一步包含在將所述經(jīng)翻譯的包 引導(dǎo)到第二接口之前,對所述經(jīng)翻譯的包執(zhí)行L2處理。
46.根據(jù)權(quán)利要求43所述的集成電路,其中所述接口與調(diào)制解調(diào)器相關(guān)聯(lián),且至少一 個經(jīng)翻譯包目的地與經(jīng)聯(lián)機(jī)計(jì)算裝置相關(guān)聯(lián)。
47.根據(jù)權(quán)利要求43所述的集成電路,其中所述指令進(jìn)一步包含識別所述所識別的包的標(biāo)頭中所指定的公共地址和端口 ;且 所述嘗試匹配包含嘗試對指定包含用戶數(shù)據(jù)報(bào)協(xié)議(UDP)或傳輸控制協(xié)議(TCP)中的 一者或一者以上的輸送協(xié)議以及對應(yīng)于所述所識別的公共地址和端口的私有地址和端口 的NAT映射規(guī)則的識別。
48.根據(jù)權(quán)利要求47所述的集成電路,其中所述翻譯包含修改所述所識別的包的所述標(biāo)頭以使得所述標(biāo)頭指定由所述所識別的NAT映射規(guī)則 給出的所述私有地址或端口 ;以及基于由所述所識別的NAT映射規(guī)則給出的所述私有地址和端口而修改所述所識別的 包的所述標(biāo)頭中的校驗(yàn)和。
49.根據(jù)權(quán)利要求43所述的集成電路,其中所述接口與經(jīng)聯(lián)機(jī)計(jì)算裝置相關(guān)聯(lián),且至 少一個經(jīng)翻譯包目的地與調(diào)制解調(diào)器相關(guān)聯(lián)。
50.根據(jù)權(quán)利要求49所述的集成電路,其中所述指令進(jìn)一步包含識別所述所識別的包的標(biāo)頭中所指定的私有地址和端口 ;且 所述嘗試匹配包含嘗試對根據(jù)包含UDP或TCP中的一者或一者以上的輸送協(xié)議而指定 對應(yīng)于所述所識別的私有地址和端口的公共地址和端口的NAT映射規(guī)則的識別。
51.根據(jù)權(quán)利要求50所述的集成電路,其中所述翻譯包含修改所述所識別的包的所述標(biāo)頭以使得所述標(biāo)頭指定由所述所識別的NAT映射規(guī)則 給出的所述公共地址和端口 ;以及基于由所述所識別的NAT映射規(guī)則給出的所述公共地址和端口而修改所述所識別的 包的所述標(biāo)頭中的校驗(yàn)和。
52.根據(jù)權(quán)利要求43所述的集成電路,其中至少一個包處理目的地包含所述應(yīng)用程序 處理器。
全文摘要
本發(fā)明描述促進(jìn)用于在多處理器計(jì)算環(huán)境中操作的數(shù)據(jù)服務(wù)的增強(qiáng)型數(shù)據(jù)服務(wù)功能性的系統(tǒng)和方法。如本文中所描述,可利用相應(yīng)的處理器和/或其它組件來形成智能外圍子系統(tǒng)(SPS)。如本文中進(jìn)一步描述,所述SPS可結(jié)合移動計(jì)算裝置處的調(diào)制解調(diào)器處理器和應(yīng)用程序處理器而操作,以便減少所述應(yīng)用程序處理器處的負(fù)擔(dān)且改進(jìn)存儲器使用效率。在移動計(jì)算裝置與經(jīng)聯(lián)機(jī)的計(jì)算裝置共享網(wǎng)絡(luò)連接的情況下,所述SPS可使與所述移動計(jì)算裝置相關(guān)聯(lián)的調(diào)制解調(diào)器接口與經(jīng)由其將相異計(jì)算裝置聯(lián)機(jī)到所述移動計(jì)算裝置的接口耦合,使得可在各種情形下將例如第2層(L2)成幀和/或解幀、網(wǎng)絡(luò)地址翻譯(NAT)等操作卸載到所述SPS。
文檔編號G06F9/46GK102067569SQ200980123012
公開日2011年5月18日 申請日期2009年6月23日 優(yōu)先權(quán)日2008年6月23日
發(fā)明者烏品德爾·S·巴巴爾, 伊德列阿斯·米爾, 史蒂文·J·德夫勒, 杰弗里·A·戴克, 杰拉爾德·J·錢伯斯, 薩姆森·吉姆, 馬爾切洛·V·利奧伊 申請人:高通股份有限公司