專利名稱:用于高效產(chǎn)生保密地址的方法
技術(shù)領(lǐng)域:
本發(fā)明大體上涉及網(wǎng)絡(luò)通信,且更具體地說涉及用于產(chǎn)生IPv6保密地址的技術(shù)。
背景技術(shù):
在因特網(wǎng)協(xié)議(IP)網(wǎng)絡(luò)中, 一主機(jī)經(jīng)由路由器與另一主機(jī)通信。如本文所使用, "IP" —般指代因特網(wǎng)協(xié)議的所有版本。在IP術(shù)語中,"節(jié)點"是實施IP的裝置,"路由 器"是將未明確尋址的IP包轉(zhuǎn)發(fā)到其本身的節(jié)點,且"主機(jī)"是并非路由器的節(jié)點。 主機(jī)可具有到鏈路的一個或多個接口。在IP術(shù)語中,"鏈路"是節(jié)點可通過其而在鏈路 層(其為緊接在IP層下方的層)處進(jìn)行通信的通信設(shè)施或媒體,且"接口"是節(jié)點到 鏈路的附接??蓪⒔涌谝暈榫W(wǎng)絡(luò)通信端口。每一接口與唯一地識別所述接口的一個或一 個以上IP地址相關(guān)聯(lián)。
因特網(wǎng)協(xié)議版本6 (IPv6)是被安排用來代替廣泛使用的因特網(wǎng)協(xié)議版本4 (IPv4) 的因特網(wǎng)協(xié)議版本。IPv6解決了 IPv4的一些關(guān)鍵限制。舉例來說,IPv4利用32位地址,
其起初被認(rèn)為會提供充足數(shù)目的地址以唯一地識別連接到因特網(wǎng)的機(jī)器。然而,因特網(wǎng) 的迅速增長已形成了用盡IPv4地址的實際風(fēng)險。IPv6通過利用128位地址來改善此問題。
IPv6還提供優(yōu)于IPv4的其它改進(jìn)之處。舉例來說,IPv6支持"無狀態(tài)地址自動配 置",其是主機(jī)可借以自動配置其自己的IPv6地址的過程。無狀態(tài)地址配置可避免在主 機(jī)連接到網(wǎng)絡(luò)之前手動配置每一主機(jī)的需要,不需要專門的服務(wù)器來管理地址和將地址 指配給網(wǎng)絡(luò)上的主機(jī),且促進(jìn)用于網(wǎng)絡(luò)上的主機(jī)的地址的重新編號。
IPv6中的無狀態(tài)地址配置允許節(jié)點產(chǎn)生如RFC 3041 (IPv6中的無狀態(tài)地址自動配置的保密擴(kuò)展)中所定義的"保密地址"。這允許節(jié)點通過周期性地改變其IP地址來隱 藏其在IPv6因特網(wǎng)內(nèi)的移動。這是通過產(chǎn)生隨機(jī)接口ID ("IID")并使其與當(dāng)前接入路 由器的網(wǎng)絡(luò)前綴相關(guān)聯(lián)來實現(xiàn)的。當(dāng)節(jié)點在廣播網(wǎng)絡(luò)上時,有必要證實沒有其它節(jié)點正 在使用新產(chǎn)生的IID。如本文所使用,"廣播網(wǎng)絡(luò)"指代連接到廣播媒體的網(wǎng)絡(luò),例如 802.3。證實沒有其它節(jié)點正在使用廣播節(jié)點上的保密地址的過程被稱為副本地址檢測 (DAD)。產(chǎn)生并證實IID的過程較費(fèi)時,且要求請求保密地址的節(jié)點在所述節(jié)點可使用 所述地址之前等待,直到產(chǎn)生、證實且最終指配所述地址為止。由此過程引起的等待時 間是不合乎需要的。需要一種用于當(dāng)在廣播網(wǎng)絡(luò)上時產(chǎn)生并管理IPv6保密地址的高效 系統(tǒng)。
發(fā)明內(nèi)容
各種實施例通過產(chǎn)生經(jīng)證實和存儲以一經(jīng)應(yīng)用請求就使用的至少一個額外專用IID 或地址來解決與產(chǎn)生保密地址相關(guān)聯(lián)的等待時間問題。每當(dāng)應(yīng)用或節(jié)點被指配專用地址 時,就可產(chǎn)生另一專用IID或地址。僅在應(yīng)用綁定到專用地址時,才可啟動用于專用地 址的反對計時器。
各種實施例提供僅指配給單個應(yīng)用且不能由一個以上應(yīng)用綁定的唯一地址,以及可 分配給任何數(shù)目的請求共享地址的應(yīng)用的共享地址。實施例通過在遭反對地址在使用中 時不刪除所述地址來使業(yè)務(wù)流中斷減到最小。
可在任何計算裝置(明確地說,包含移動話機(jī))上實施用于產(chǎn)生保密地址的方法。
當(dāng)結(jié)合附圖考慮時,從下文所陳述的詳細(xì)描述中將更加明白本發(fā)明的特征和性質(zhì),
附圖中相同參考符號始終對應(yīng)地識別,且其中
圖1是提供用于產(chǎn)生專用地址并將其指配給應(yīng)用的各種實施例的概觀的過程流程圖。
圖2是提供根據(jù)一實施例的用于專用地址的反對計時器的啟始的概觀的過程流程圖。
圖3是說明在實施各種實施例中的一者的裝置的操作期間各種IID的可能狀態(tài)的狀 態(tài)機(jī)圖。
圖4是用于產(chǎn)生IID的實施例方法的過程流程圖。
圖5是用于分配由應(yīng)用請求觸發(fā)的專用地址的實施例方法的過程流程圖。
9圖6是用于在副本地址檢測過程期間管理專用IID的實施例方法的過程流程圖。
圖7是用于服務(wù)未解決的應(yīng)用請求的實施例方法的過程流程圖。
圖8是用于在會話建立時產(chǎn)生專用IID的實施例方法的過程流程圖。
圖9是用于產(chǎn)生專用IID的替代實施例方法的過程流程圖。
圖IO是適合實施各種實施例的移動話機(jī)的組件框圖。
具體實施例方式
將參看附圖詳細(xì)描述各種實施例。每當(dāng)可能時,附圖中將始終使用相同參考標(biāo)號來 指代相同或相似零件。
如RFC 3041 (IPv6中的無狀態(tài)地址自動配置的保密擴(kuò)展,其全文以引用的方式并 入本文中)中所描述, 一些因特網(wǎng)用戶可能對IP地址可被竊聽者和數(shù)據(jù)挖掘者(data miner)監(jiān)視的可能性具有保密擔(dān)憂。通過跟蹤特定接口 (例如,蜂窩式電話、膝上型計 算機(jī)、個人數(shù)據(jù)助理(PDA)和移動電子郵件接收器)所使用的IP地址,數(shù)據(jù)挖掘者有 可能跟蹤用戶的移動和因特網(wǎng)通信,即使所述通信本身是經(jīng)過加密的。這些擔(dān)憂可通過 使用以隨機(jī)方式產(chǎn)生并周期性地變化的IP地址來解決,借此使跟蹤到達(dá)特定節(jié)點(例 如,用戶移動話機(jī)或膝上型計算機(jī))的IP地址的問題變得復(fù)雜。
蜂窩式移動話機(jī)(例如,多功能蜂窩式電話)使用專用IP地址來建立并管理到達(dá) 蜂窩式電話節(jié)點的連接,以及到達(dá)電子郵件和因特網(wǎng)連接服務(wù)的數(shù)據(jù)鏈路連接。當(dāng)作出 呼叫時且隨著每一次蜂窩式節(jié)點越區(qū)切換,可針對移動話機(jī)使用新的IP地址。類似地, 當(dāng)將傳輸電子郵件消息或請求經(jīng)由無線數(shù)據(jù)鏈路而接入因特網(wǎng)時,IP地址由移動話機(jī)產(chǎn) 生或被指配給移動話機(jī)。在IPv6下,可使所述IP地址為專用的,使得數(shù)據(jù)挖掘工具無 法輕易地跟蹤個體的位置和電話使用情況。
如上文所述,IPv6IP地址的長度為128位,包括64位前綴和64位IID。在大多數(shù) 情形下,前綴是固定的或由裝置正連接到的路由器提供。因此,為了產(chǎn)生專用IP地址, 系統(tǒng)僅需要產(chǎn)生與已知前綴組合的隨機(jī)且非冗余IID。通過作出IID與前綴的此組合來 產(chǎn)生IP地址通常由系統(tǒng)實現(xiàn)(盡管各種實施例在應(yīng)用在接收到IID時產(chǎn)生地址的實施方 案中也將有用)。
在各種實施例中,系統(tǒng)可在應(yīng)用請求IP地址時(即,就在將所述地址分配給所述
應(yīng)用之前),通過組合經(jīng)預(yù)檢驗的IID與前綴而產(chǎn)生新的地址?;蛘?,系統(tǒng)可在IID被產(chǎn)
生并檢驗(針對廣播地址)時產(chǎn)生所述地址,其中所述地址存儲在存儲器或緩沖器中,
直到被應(yīng)用請求為止。換句話說,在各種實施方案或?qū)嵤├?,前綴可在64位隨機(jī)數(shù)
10產(chǎn)生之后的任何時間與專用IID組合。因此,系統(tǒng)實施例可根據(jù)本文所描述的方法來管 理IID或地址。出于這個原因,如所屬領(lǐng)域的技術(shù)人員將了解,本文對"IP地址"、"地 址"和"IID"的引用可依據(jù)情況而互換。此外,在系統(tǒng)可能正在產(chǎn)生或存儲IID的情況 下,對"地址"的引用不希望排除IID或僅指代前綴與IID的組合。類似地,在系統(tǒng)可 能正在產(chǎn)生、存儲或分配地址的情況下,對"IID"的引用不希望必然地排除地址(即, IID與前綴的組合)。并且,圖中未展示前綴與IID組合以形成IP地址,以便避免暗示 完整的IP地址是在實施例過程中的特定點處產(chǎn)生的。
RFC3041中所描述的程序通過根據(jù)經(jīng)設(shè)計以確保高度隨機(jī)性的算法產(chǎn)生64位隨機(jī) 數(shù)來產(chǎn)生專用地址。將64位隨機(jī)數(shù)用作臨時IID,其與裝置所連接到的路由器或節(jié)點的 前綴地址組合,以便創(chuàng)建專用IP地址。為了擊敗竊聽者和數(shù)據(jù)挖掘者,基于RFC3041 中所描述的臨時IID的地址限于有效壽命(例如, 一周)和較短的優(yōu)選壽命(例如,一 天)。如RFC3041中所預(yù)想,當(dāng)由有效壽命計時器測量的有效壽命期滿時,不應(yīng)再使用 地址且所述地址應(yīng)由系統(tǒng)刪除。當(dāng)由優(yōu)選壽命計時器測量的優(yōu)選壽命期滿時,地址被稱 為"遭反對的"且不應(yīng)被指配給應(yīng)用,且使用遭反對地址的應(yīng)用應(yīng)請求新的專用地址。 由于當(dāng)?shù)刂返膬?yōu)選壽命計時器期滿時所述地址遭反對,所以本文中通常將優(yōu)選壽命計時 器稱為"反對計時器"。RFC3041要求在創(chuàng)建新IID時或在產(chǎn)生基于所述新IID的地址 時開始有效和反對計時器。連接到廣播網(wǎng)絡(luò)(即,連接到廣播媒體的網(wǎng)絡(luò),例如802.3) 的裝置必須具有唯一 IP地址,以便使所述網(wǎng)絡(luò)知道包的來源和目的地。因此,使用DAD 過程來證實經(jīng)產(chǎn)生以在廣播情況下使用的IID,所述DAD過程確認(rèn)廣播網(wǎng)絡(luò)上沒有其它 節(jié)點正在使用同一IID。由于DAD過程的完成較費(fèi)時,所以RFC3041要求在當(dāng)前IID 優(yōu)選壽命期滿之前較短時間(例如,5秒)產(chǎn)生新IID。
雖然RFC3041中指定的程序?qū)τ谠S多固定和移動計算機(jī)應(yīng)用來說可能是令人滿意
的,但所述程序具有可能影響用戶體驗的限制,尤其是在蜂窩式電話型移動話機(jī)的情況
下。由于用戶通常總是隨身攜帶其移動話機(jī),所以保密擔(dān)憂增加。如果移動話機(jī)中所使
用的地址具有如RFC3041中所預(yù)期的壽命(即, 一天到一周),那么數(shù)據(jù)挖掘者可跟蹤
用戶的位置和網(wǎng)絡(luò)使用情況持續(xù)完整的一天或一周。因此,RFC3041程序中所預(yù)期的基
于IID的地址壽命將不為許多移動話機(jī)用戶提供充分的匿名性。移動話機(jī)可隨著每一呼
叫且可能隨著每一小區(qū)節(jié)點越區(qū)移交而使用基于新IID的新地址。由于來自移動話機(jī)的
電話和數(shù)據(jù)呼叫可能較短或較長且在任何時間建立,所以需要RFC 3041中未預(yù)期到的
用于在頻繁且不可預(yù)測的基礎(chǔ)上產(chǎn)生專用地址的方法。
現(xiàn)代移動話機(jī)可具有同時運(yùn)行的大量應(yīng)用且使用許多接口。因此,移動話機(jī)可能需要許多地址,且因此需要許多IID。 一些應(yīng)用可能能夠共享基于IID的地址,但一些應(yīng) 用(例如,蜂窩式電話和無線因特網(wǎng)通信)需要專門且全局唯一的IP地址。然而,RFC 3041預(yù)期僅為一裝置產(chǎn)生單個IP地址。因此,需要用于產(chǎn)生多個地址并將其分配給多 個接口和應(yīng)用的方法。
在移動話機(jī)的正常操作中,存在與信號強(qiáng)度和特性相關(guān)聯(lián)的多種唯一地變化的值, 其與RFC 3041中所指定的程序相比提供更多用于產(chǎn)生IID的隨機(jī)數(shù)的隨機(jī)種子值。因 此,移動話機(jī)可使用涉及較少步驟或存儲器同時提供較高等級的隨機(jī)性的不同算法。
在移動應(yīng)用中,1ID是64位隨機(jī)數(shù),其與所連接廣播網(wǎng)絡(luò)路由器的64位網(wǎng)絡(luò)前綴 組合以創(chuàng)建128位IPv6地址。因此,為了確保唯一 IP地址,執(zhí)行DAD (副本地址檢測) 例行程序,以確認(rèn)沒有其它連接到通信節(jié)點或路由器的裝置正在使用同一IID或地址。 DAD過程通常涉及廣播所提議的地址,以及詢問其它裝置是否已在使用所述地址。然而, 此過程的完成較費(fèi)時,其可導(dǎo)致用戶體驗問題,例如建立呼叫、發(fā)送電子郵件或接收因 特網(wǎng)內(nèi)容的過程中的延遲。
為了克服這些限制,各種實施例提供用于產(chǎn)生、分配和控制專用地址的經(jīng)改進(jìn)的方 法。這些改進(jìn)之處包含在應(yīng)用請求地址之前產(chǎn)生并確認(rèn)IID或地址,使得預(yù)先檢驗的IID 或地址在大多數(shù)情形下容易地可用。為了啟用此能力,可在初始化裝置(例如,移動話 機(jī))或針對特定接口建立數(shù)據(jù)會話時(例如,在接收到路由器通告時)產(chǎn)生IID或地址 并將其存儲在存儲器或緩沖器中。接著,每當(dāng)應(yīng)用請求且被分配地址時,就即時產(chǎn)生替 代IID,其可被存儲或在一些實施例中用于創(chuàng)建所存儲的地址。由于預(yù)產(chǎn)生并檢驗IID, 所以在作出請求的應(yīng)用實際上綁定地址之前,不啟動與特定IID或地址相關(guān)聯(lián)的反對計 時器。這確保了存儲在存儲器或緩沖器中的IID或地址在其被使用之前不會期滿,且允 許使用較短IID或地址壽命。另外,各種實施例提供可由多個應(yīng)用共享的地址和對于特 定應(yīng)用來說唯一的地址。
在分配IP地址的過程中,實施例系統(tǒng)可跟蹤作出請求的應(yīng)用是否綁定到地址。舉 例來說,所述系統(tǒng)可包含計時器,其在地址被分配給應(yīng)用時啟動,且倒計數(shù)到預(yù)設(shè)的時 間(例如,兩分鐘),或直到所述應(yīng)用將所述地址綁定到套接字為止。如果作出請求的 應(yīng)用在預(yù)設(shè)的時間(例如,兩分鐘)內(nèi)未綁定所分配的地址。那么可認(rèn)為所述應(yīng)用不在 使用所述地址,且可刪除所述地址且所述應(yīng)用被告知所述地址不再有效。此能力防止應(yīng) 用不必要地消耗資源。
實施例系統(tǒng)還可通過使用本文稱為參考計數(shù)("Ref—cnt")的計數(shù)對己綁定到每一地 址的應(yīng)用的數(shù)目進(jìn)行計數(shù)來跟蹤所指配的地址(或IID)。如果一個應(yīng)用綁定到一地址,那么所述地址的參考計數(shù)為1。如果兩個應(yīng)用共享一地址且均綁定到所述地址,那么參 考計數(shù)為2。如果一應(yīng)用從一地址解開,那么參考計數(shù)減小1。如果一應(yīng)用解開唯一地 址,那么參考計數(shù)遞減到零,其向系統(tǒng)指示應(yīng)刪除所述地址。類似地,使用參考計數(shù)來 確定何時可刪除遭反對的共享地址。具體地說,在參考計數(shù)等于零之前,不刪除遭反對 的地址。因此, 一旦共享地址的反對計時器已期滿,系統(tǒng)就不會將所述共享地址分配給 應(yīng)用,但系統(tǒng)不會刪除所述遭反對的地址,直到其參考計數(shù)等于零從而指示沒有應(yīng)用目 前正在使用所述地址為止。此方法的顯著優(yōu)點是,其通過在遭反對的地址在使用中時不 刪除所述地址來使業(yè)務(wù)流中斷減到最小。參考計數(shù)還可由系統(tǒng)用來確定是否可釋放系統(tǒng) 資源。
圖1說明各種實施例的概觀方法??蓪嵤├椒▽嵤椴僮飨到y(tǒng)內(nèi)的子例行程序、 應(yīng)用程序接口或支持應(yīng)用;運(yùn)行時環(huán)境;或應(yīng)用開發(fā)工具包。例如在接收到有效路由器 通告(router advertisement, RA)時或在應(yīng)用請求IPv6保密地址時(步驟102),可激活 所述方法(步驟100)。實施軟件可首先檢查以確定是否有額外IID或保密地址存儲在存 儲器中(測試104)。如果存儲器中存在額外IID或地址,那么可測試請求的類型,以確 定應(yīng)用是否不是請求所述地址(測試106),在應(yīng)用不是請求所述地址的情況下,例行程 序結(jié)束(步驟108)。如果應(yīng)用尚未啟始IID產(chǎn)生過程,那么這意味著所述過程由路由器 通告自發(fā)產(chǎn)生,其中所述過程無需進(jìn)行任何進(jìn)一步動作,因此只要存儲器中存儲有一個 額外地址即可。如果所述請求來自應(yīng)用(即,測試106="是"),那么保留所述應(yīng)用所 需的地址的類型(唯一或共享)(步驟110)。接著(例如)通過使用存儲在存儲器中的 各種隨機(jī)數(shù)(例如,鏈路管理相關(guān)值)作為種子值而產(chǎn)生64位隨機(jī)數(shù)來產(chǎn)生IID (步驟 112)。如果所述地址正針對其而產(chǎn)生的接口將是廣播接口 (即,連接到廣播媒體的接口, 例如802.3)(測試114),那么將啟始DAD例行程序(步驟116)。作為此例行程序的一 部分,可告知所述應(yīng)用當(dāng)?shù)刂芬驯淮_認(rèn)時,將提供所述地址。
在DAD過程116中,將所提議的IID (或地址本身)廣播到網(wǎng)絡(luò)上的其它節(jié)點,以 確定其它裝置是否正在使用同一IID值或地址。此過程的結(jié)果將是指示DAD是成功(即, 所述過程確定沒有其它裝置正在使用所述IID或地址)還是不成功(即,所述過程確定 所提議的IID為副本)的值。如果DAD過程不成功(測試U8),那么例行程序可測試 是否已超過產(chǎn)生IID時的預(yù)定重試數(shù)目(測試124)。提供此測試以檢測可能防礙在合理 時間內(nèi)獲得非冗余IID的錯誤條件。如果超過預(yù)定重試數(shù)目,那么可向應(yīng)用提供錯誤消 息且例行程序結(jié)束(步驟126)。如果尚未超過預(yù)定重試數(shù)目,那么產(chǎn)生另一IID (步驟 112),且所述過程如上文所述那樣繼續(xù),直到IID成功完成DAD過程為止。
13如果IID或地址并非既定用于廣播接口 (即,測試114="否")或如果DAD過程 成功(即,測試118="是"),那么所述過程可測試是否正產(chǎn)生初始IID或地址(測試 120),其可在不存在可用的額外IID或地址的情況下發(fā)生。如果所述過程不在產(chǎn)生初始 保密地址,那么所述IID被返回、存儲在存儲器中或與前綴組合以形成分配給應(yīng)用的地 址,且例行程序結(jié)束(步驟122)。如果例行程序正在產(chǎn)生初始保密地址(即,測試120 ="是"),那么在測試106處開始重復(fù)所述過程以產(chǎn)生第二 IID。此第二 IID可接著存 儲在存儲器或緩沖器中(或用于創(chuàng)建存儲在存儲器或緩沖器中的地址),以響應(yīng)于對地 址的下一請求而使用。
返回到測試104,如果額外保密地址不存在于存儲器中(即,測試104="否"), 那么所述過程可直接進(jìn)行以產(chǎn)生IID (步驟112)。在此情形下,創(chuàng)建初始保密地址的測 試(測試120)將為"是",且在地址被分配給應(yīng)用之前,將重復(fù)例行程序。此過程確保 額外保密地址將保存在存儲器或緩沖器中以響應(yīng)于對地址的下一請求而使用。
為了允許預(yù)產(chǎn)生IID或地址,需要對地址反對計時器的激活進(jìn)行改變。在RFC 3041 中所預(yù)想的方法下,在IID創(chuàng)建時或當(dāng)使用所述IID產(chǎn)生地址時,啟動優(yōu)選反對計時器。 因此,如果在應(yīng)用請求之前產(chǎn)生IID或地址,那么所述地址可能在被指配給應(yīng)用之前或 之后不久就期滿或反對。為了防止預(yù)產(chǎn)生的IID或地址發(fā)生此情況,各種實施例在應(yīng)用 將所述地址綁定到套接字(即,應(yīng)用開始使用所述地址)之前,不會啟動優(yōu)選反對計時 器。這允許預(yù)產(chǎn)生當(dāng)被指配給應(yīng)用時將留有充足優(yōu)選壽命的IID和地址。
在優(yōu)選實施例中,系統(tǒng)僅通過告知應(yīng)用地址遭反對來對優(yōu)選壽命反對計時器起作 用。有效壽命計時器運(yùn)行,但系統(tǒng)在地址的有效壽命計時器期滿時并不采取行動來刪除 所述地址,因為這可能導(dǎo)致例如IP語音(VOIP)和實時應(yīng)用等關(guān)鍵應(yīng)用的不合需要的 中斷。在共享專用IID的情況下,優(yōu)選反對計時器規(guī)定可向新應(yīng)用指配特定共享IID的 周期。 一旦優(yōu)選計時器已期滿,就認(rèn)為地址遭反對,且新應(yīng)用請求將觸發(fā)分配新的基于 共享專用IID的地址。并且,將告知使用遭反對共享地址的應(yīng)用,使得所述地址可請求 新的地址。
另外,各種實施例提供唯一且共享的地址。此創(chuàng)新認(rèn)可以下事實許多應(yīng)用可在無 沖突的情況下容易地共享地址,而一些應(yīng)用(例如,蜂窩式電信和無線因特網(wǎng)通信)無 法共享地址。
共享地址可由多個應(yīng)用在無沖突的情況下使用。RFC 3041中所預(yù)想的反對計時器可 用于確保只要存在保密擔(dān)憂就不使用共享地址。系統(tǒng)用共享地址的由反對計時器確定的 壽命來控制所述共享地址。唯一地址僅指配給單個應(yīng)用且所述應(yīng)用一釋放所述地址,就刪除IID和地址,使得 所述地址僅使用一次。這提供在最高保密保護(hù)的情況下使用唯一IID的應(yīng)用。假定應(yīng)用 增加了對網(wǎng)絡(luò)數(shù)據(jù)連接的控制,那么請求并接收唯一地址的應(yīng)用可在沒有系統(tǒng)涉入的情 況下將地址分配給其它應(yīng)用。由于僅單個應(yīng)用使用給定IID且僅使用一次,所以通知應(yīng) 用反對計時器的期滿在唯一地址的情況下是任選的。如果得到通知,那么使用所述地址 的應(yīng)用僅被告知計時器的期滿且所述地址并不被刪除;將地址的使用的終止留給所述應(yīng) 用。
圖2中說明基于IID的地址向應(yīng)用的指配以及反對計時器的使用。當(dāng)從應(yīng)用接收到 對地址的請求(步驟200)時,使用存儲器中的IID來產(chǎn)生地址或從存儲器回調(diào)地址, 并將所述地址分配給應(yīng)用,如下文更詳細(xì)地描述(步驟202)。地址的處置于是取決于所 述地址是將被共享還是唯一的(測試204)。如果所述地址將被共享,那么將所述地址分 配給綁定所述地址(所述地址為前綴加IID)的作出請求的應(yīng)用(步驟206)。此時,針 對共享地址啟動反對計時器(步驟208)。可用如由第一應(yīng)用使用的同一共享地址來滿足 來自其它應(yīng)用的對共享地址的后續(xù)請求,而無需啟動新的反對計時器。
一旦被啟動,反對計時器就繼續(xù)直到其期滿(測試210)為止。此時,告知使用所 述地址的應(yīng)用所述地址遭反對(步驟212),且所述地址遭反對(步驟214),使得所述 地址無法被指配給另一應(yīng)用。當(dāng)每一應(yīng)用釋放地址時,所述地址的參考計數(shù)("Ref—cnt") 遞減。所述過程監(jiān)視遭反對地址的參考計數(shù)(測試216),且當(dāng)所述計數(shù)等于零時(意味 著所述地址已被所有應(yīng)用釋放),刪除所述遭反對地址(步驟218)。
如果請求是針對唯一地址的,那么存儲器中的IID與前綴組合以產(chǎn)生唯一地址,其 分配給綁定所述地址(步驟220)的僅一個應(yīng)用。在預(yù)先從IID中形成地址并將其存儲 在存儲器中的實施例中,將存儲器中的地址分配給在步驟220中綁定所述地址的一個應(yīng) 用。唯一地址將保持有效且在使用中,直到所述應(yīng)用釋放所述地址從而使參考計數(shù) ("Ref—cnt")遞減到零為止。所述過程監(jiān)視參考計數(shù),且當(dāng)參考計數(shù)等于零(測試228) 時,刪除所述IID和地址(步驟218),使得其無法再次使用。當(dāng)應(yīng)用綁定地址時,啟動 反對計時器(步驟222),且反對計時器運(yùn)行直到其期滿(步驟224)為止。任選地,所 述過程可告知應(yīng)用地址反對計時器已期滿(步驟226)(以虛線展示,因為所述步驟在一 些實施例中不實施)。然而,將不基于反對計時器的期滿而反對地址,以便阻止應(yīng)用的 中斷功能。應(yīng)用可包含在被通知優(yōu)選壽命計時器已期滿時請求新地址的規(guī)定,或可經(jīng)編 程以忽略此類通知。
圖3中說明各種實施例的總體運(yùn)作,圖3展示說明系統(tǒng)在對于IID和保密地址的操
15作期間可具有的各種狀態(tài)的IID狀態(tài)機(jī)。所述狀態(tài)機(jī)在狀態(tài)"自由"300處開始,其中 沒有專用IID或地址被指配或存儲在存儲器或緩沖器中??稍谝旬a(chǎn)生IID之前,或在期 間不可產(chǎn)生IID的與網(wǎng)絡(luò)失去聯(lián)系的時間周期之后,在裝置激活時達(dá)到此狀態(tài)。從此狀 態(tài)開始,產(chǎn)生專用IID,如下文參看圖4所描述。在裝置上運(yùn)行的應(yīng)用可請求用于連接 到網(wǎng)絡(luò)的專用地址。在接收到此請求時,裝置產(chǎn)生IID,在狀態(tài)機(jī)中前進(jìn)到狀態(tài)C 302。
從C狀態(tài)302開始,如果請求是在點到點網(wǎng)絡(luò)或非廣播網(wǎng)絡(luò)上,即來自可共享地址 的應(yīng)用,那么所產(chǎn)生的IID準(zhǔn)備就緒以供使用,且狀態(tài)機(jī)前進(jìn)到可用狀態(tài)306。這是專 用1ID可用于創(chuàng)建地址以指配給作出請求的應(yīng)用的狀態(tài)。在一些實施例中,可用狀態(tài)306 可指示已從IID創(chuàng)建了專用地址,且所述專用地址可用于指配給作出請求的應(yīng)用。點到 點網(wǎng)絡(luò)是前綴對于每連接來說為唯一的一種網(wǎng)絡(luò)。
如果前綴在從路由器開始的其它點到點鏈路上共享,或如果在并非點到點網(wǎng)絡(luò)的廣 播網(wǎng)絡(luò)上作出地址請求,那么裝置啟始DAD過程且狀態(tài)機(jī)前進(jìn)到試驗性狀態(tài)304。在試 驗性狀態(tài)304下,網(wǎng)絡(luò)運(yùn)行所描述的DAD過程,以確保IID不是已經(jīng)由另一節(jié)點使用 的地址的副本。此IID狀態(tài)是試驗性的以考慮當(dāng)DAD過程進(jìn)行時檢驗所述IID的過程 中的延遲。如果DAD過程失敗,指示產(chǎn)生副本IID,那么狀態(tài)機(jī)返回到自由狀態(tài)300, 且接著在可創(chuàng)建新的IID時返回到C狀態(tài)302。可將所述失敗告知請求所述IID的應(yīng)用, 因為產(chǎn)生另一 IID并完成針對新IID的DAD過程的時間將延遲將地址指配給所述應(yīng)用。 在對共享地址的多個請求的情況下,需要將請求是否失敗告知所有請求所述共享地址的 應(yīng)用。如果DAD過程成功,指示IID在廣播節(jié)點上不是冗余的,那么狀態(tài)機(jī)從試驗性 狀態(tài)304前進(jìn)到可用狀態(tài)306,從而指示經(jīng)檢驗的廣播IID準(zhǔn)備就緒以用于產(chǎn)生可指配 的地址。
從可用狀態(tài)306開始,裝置確定應(yīng)用請求共享地址還是唯一地址。如果應(yīng)用請求共 享地址,那么狀態(tài)機(jī)前進(jìn)到共享狀態(tài)310。通過使可用IID與前綴組合來創(chuàng)建地址,或 從存儲器回調(diào)可用地址。在共享狀態(tài)310下,應(yīng)用被指配可與其它應(yīng)用共享的地址。在 共享狀態(tài)310內(nèi),地址起初處于共享未綁定狀態(tài)312,其中地址被分配給一個或一個以 上應(yīng)用。當(dāng)應(yīng)用綁定到所指配的地址時,狀態(tài)機(jī)前進(jìn)到共享綁定狀態(tài)314。在綁定后, 參考計數(shù)器("ref一cnt")遞增以跟蹤綁定到所述地址的應(yīng)用的數(shù)目。其它應(yīng)用也可綁定 到所述共享地址。每次當(dāng)另一應(yīng)用綁定到所述共享地址時,參考計數(shù)遞增。在任何時間, 一應(yīng)用可釋放地址(即,解開并停止使用所述地址),此時參考計數(shù)遞減。如果在應(yīng)用 釋放共享地址之后參考計數(shù)等于零,指示當(dāng)前無應(yīng)用綁定到所述地址,那么除非如下文 所描述所述地址遭反對,否則共享地址返回到未綁定狀態(tài)312。如上文所論述,共享的基于專用IID的地址具有與其相關(guān)聯(lián)的優(yōu)選壽命周期,以在 長時期內(nèi)確保沒有應(yīng)用使用這些地址的一者。當(dāng)?shù)谝粦?yīng)用綁定到共享地址,從而將IID/ 地址狀態(tài)從共享未綁定312變?yōu)楣蚕斫壎?14時,啟動與基于IID的地址相關(guān)聯(lián)的反對 計時器。反對計時器用于確定地址的優(yōu)選壽命中剩余的時間。(還啟動有效計時器,但 如本文所描述,所述系統(tǒng)不使用有效計時器,且并不基于有效計時器的期滿而刪除地 址)。 一旦地址的反對計時器期滿,所述地址就遭反對,且將用不同專用共享地址來滿 足后續(xù)應(yīng)用的共享地址請求。在一實施例中,優(yōu)選反對計時器用于指示地址是否可被指 配給應(yīng)用,以及何時應(yīng)告知使用地址的應(yīng)用地址已遭反對且應(yīng)請求新地址。當(dāng)基于IID 的地址處于共享綁定狀態(tài)314時,其它應(yīng)用可綁定到同一地址,且因此只要所述地址的 反對計時器尚未期滿就共享所述同一地址。
反對計時器對基于IID的地址的剩余優(yōu)選壽命周期進(jìn)行倒計數(shù)直到其期滿為止,此 時所述地址變?yōu)樵夥磳顟B(tài)318。此時,可通知使用共享的基于IID的地址的應(yīng)用所述 地址遭反對,因此應(yīng)用可(如果所述應(yīng)用是這樣編程的話)請求新地址。 一旦所有使用 遭反對的共享地址的應(yīng)用均釋放所述地址,所述地址的參考計數(shù)("Ref—cnt")就等于零, 此時刪除所述地址且系統(tǒng)移動到自由狀態(tài)300,因此產(chǎn)生新IID以及分配地址的過程可 繼續(xù)。
返回到可用狀態(tài)306,如果應(yīng)用請求唯一地址,那么基于IID的地址僅被分配給作 出請求的應(yīng)用,且狀態(tài)機(jī)前進(jìn)到唯一狀態(tài)316。在唯一狀態(tài)316下,所述應(yīng)用綁定到所 述唯一地址,且所述地址由所述應(yīng)用控制。 一旦唯一地址被指配給應(yīng)用,系統(tǒng)就不再可 以將所述地址指配給任何其它應(yīng)用。然而,被指配唯一地址的原始應(yīng)用可允許其它應(yīng)用 或過程綁定到所述唯一地址。因此,在唯一狀態(tài)316下,對唯一地址的控制被傳給作出 請求的應(yīng)用。盡管在將唯一地址指配給應(yīng)用時啟動反對計時器,但到達(dá)所述應(yīng)用的關(guān)于 此計時器的期滿的任何通知對于唯一地址來說是任選的。因為僅單個應(yīng)用使用所述唯一 地址,所以在應(yīng)用已停止使用所述地址之前,系統(tǒng)不需要提示所述應(yīng)用釋放所述地址。 如果使用反對計時器且其期滿,那么可將此事實告知所述應(yīng)用,但所述地址不遭系統(tǒng)反 對。然而,如本文所描述,應(yīng)用一釋放唯一地址(這使所述地址的參考計數(shù)遞減到零), 系統(tǒng)就刪除所釋放的唯一地址。
為了加快應(yīng)用的操作,需要確保當(dāng)應(yīng)用請求地址時IID或地址始終可用。這可通過 在會話建立時產(chǎn)生專用IID,并在應(yīng)用作出請求時自動產(chǎn)生另一專用IID來完成。這加 快了將專用地址返回給應(yīng)用,因為始終存在備用的額外IID (或地址)。這對于如可在移 動話機(jī)上使用的廣播接口來說是重要的,因為DAD的完成要花費(fèi)一些時間,這可導(dǎo)致建立或繼續(xù)通信的過程中不合需要的延遲。使用這些方法,經(jīng)預(yù)檢驗的地址可始終可用, 從而準(zhǔn)備就緒以支持應(yīng)用地址請求,即使在地址期滿或被不可預(yù)測地刪除時也如此。下 文參看圖4到圖9來描述用于產(chǎn)生和指配專用IID的方法。
圖4說明IID產(chǎn)生過程400的實例實施例。當(dāng)應(yīng)用請求地址或系統(tǒng)接收到路由器通 告時,可啟始IID產(chǎn)生過程(步驟401)。所述過程產(chǎn)生64位隨機(jī)數(shù)以用作臨時IID (步 驟402)。任何已知隨機(jī)數(shù)生成器算法均可用于產(chǎn)生此數(shù)字,且在移動話機(jī)的情況下,多 種鏈路控制數(shù)據(jù)可用作所述算法的隨機(jī)種子值,因為鏈路控制數(shù)據(jù)快速變化且最有可能 在任何給定時刻在每個移動話機(jī)中是不同的。由于IID是隨機(jī)產(chǎn)生的,所以可對照已由 裝置使用或存儲在系統(tǒng)中的IID對所述隨機(jī)產(chǎn)生的IID進(jìn)行測試,以確認(rèn)新的IID不是 副本(測試404)。如果創(chuàng)建了副本IID (即,測試404="是"),那么過程返回到先前 步驟以產(chǎn)生另一 64位隨機(jī)數(shù)(步驟402)。此產(chǎn)生和測試IID的過程(步驟402和步驟 404)繼續(xù),直到產(chǎn)生非副本IID為止。
如果所產(chǎn)生的IID不匹配系統(tǒng)上任何現(xiàn)存IID (即,測試404="否"),那么將新創(chuàng) 建的IID存儲在與請求所述地址所針對的接口相關(guān)聯(lián)的存儲器或緩沖器中(步驟406)。 接下來,過程確定所述IID是否供廣播網(wǎng)絡(luò)中使用(測試408)。如果所述接口將不用于 廣播媒體(即,測試408二 "否"),那么使所述IID可用于產(chǎn)生供指配給應(yīng)用的地址(步 驟424),其后所述過程可返回到調(diào)用其的例行程序或過程(步驟422)。在一實施例中, 新創(chuàng)建的IID可用于創(chuàng)建存儲在存儲器或緩沖器中的地址(步驟406)。
如果所述IID供廣播網(wǎng)絡(luò)中使用(即,測試408="是"),那么過程將IID狀態(tài)設(shè) 置為試驗性的(步驟410),且啟始DAD過程(步驟420)。 DAD過程無需針對點到點 網(wǎng)絡(luò)執(zhí)行,因為鏈路的任一端上的節(jié)點的IID通常是已知的(這是現(xiàn)今3G網(wǎng)絡(luò)中的情 況)。在已啟始DAD的情況下,過程可返回到調(diào)用其的例行程序或過程(步驟422)。由 于DAD過程可確定IID (或基于IID的地址)是廣播節(jié)點上的另一IID的副本,所以將 需要測試DAD過程420的結(jié)果。下文參看圖6來描述此測試。在一實施例中,過程可 從DAD過程420直接前進(jìn)到圖6中所說明的DAD完成過程。在替代實施例中,DAD 測試可包含在如下文參看圖9而描述的IID產(chǎn)生過程內(nèi)。
應(yīng)注意,在CDMA無線應(yīng)用中,每一移動話機(jī)均擁有其前綴,因此不需要對地址 執(zhí)行DAD過程。事實上,確認(rèn)IID不匹配移動話機(jī)上所使用的另一 IID (步驟404), 足以確認(rèn)地址并非是冗余的。因此,可不針對CDMA網(wǎng)絡(luò)接口實施涉及DAD過程且在 試驗性狀態(tài)下處理IID的實施例過程。這并不是要暗示CDMA移動話機(jī)將不使用所述各
種實施例,因為移動話機(jī)使用也可能使用其它無線和有線網(wǎng)絡(luò)連接,例如廣域無線(WiFi)網(wǎng)絡(luò)連接(如WLAN、藍(lán)牙、WiFi、 WiMax等)。
當(dāng)應(yīng)用請求地址且IID或地址可用時,地址(存儲器中的地址或IID與前綴的組合) 需要被分配給所述應(yīng)用。圖5中說明用于實現(xiàn)此地址分配的實例實施例過程。所述過程 可作為子例行程序或應(yīng)用調(diào)用而啟始(步驟500),其后所述過程確定應(yīng)用是否請求共享 地址(測試502)。如上文所論述,當(dāng)應(yīng)用請求共享專用地址時,專用地址可由一個以上 應(yīng)用使用。如果應(yīng)用請求共享地址(即,測試502="是"),那么所述過程確定現(xiàn)存地 址(基于共享IID)是否處于共享狀態(tài)(測試504)。如上文所論述,如果前一應(yīng)用已經(jīng) 請求且被分配有共享地址,那么地址(或用于產(chǎn)生所述地址的IID)可處于共享狀態(tài)。 如果IID (或地址)處于共享狀態(tài)且可用(即,測試504="是"),那么告知應(yīng)用共享 地址可用并向其提供所述地址(步驟506)。在已滿足應(yīng)用的地址請求的情況下,不需要 創(chuàng)建新的IID,因此過程終止或返回到調(diào)用所述過程的例行程序(步驟524)。
如果應(yīng)用請求共享地址但地址或IID不處于共享狀態(tài)(即,測試504="否"),或 如果應(yīng)用請求唯一地址(即,測試502="否"),那么所述過程確定所述IID或地址是 否處于可用狀態(tài)(即,IID或地址可用于分配)(測試506)。如果IID準(zhǔn)備就緒以用于創(chuàng) 建可被指配給應(yīng)用的地址,那么所述IID處于可用狀態(tài),如上文參看圖3針對可用狀態(tài) 306而描述。類似地,如果地址可被指配給應(yīng)用,那么所述地址處于可用狀態(tài)。如果IID 或地址處于可用狀態(tài)(即,測試506="是"),那么所述過程再次檢查所述應(yīng)用在請求 唯一還是共享地址(測試508)。如果應(yīng)用不在請求共享地址(即,測試508="否"), 那么所述過程將IID/地址狀態(tài)設(shè)置為共享(510),并啟始另一IID的產(chǎn)生(過程400), 如上文參看圖4而描述。此新的專用IID可存儲在緩沖器或存儲器中直到地址被請求為 止,或用于產(chǎn)生新的專用地址,其存儲在緩沖器或存儲器中直到被請求為止。接著,告 知所述應(yīng)用共享地址可用并向其提供基于IID的地址(步驟506)。在已滿足應(yīng)用的地址 請求的情況下,所述過程終止或返回到調(diào)用所述過程的例行程序(步驟524)。
如果應(yīng)用正請求唯一地址(即,測試508="是"),那么所述過程設(shè)置IID或地址 狀態(tài)(步驟512),且啟始另一 IID的產(chǎn)生(過程400),如上文參看圖4而描述。此新 的專用IID可存儲在緩沖器或存儲器中直到地址被請求為止,或用于產(chǎn)生新的專用地址, 其存儲在緩沖器或存儲器中直到被請求為止。接著告知所述應(yīng)用唯一地址可用并向其提 供基于IID的地址(步驟506)。在已滿足應(yīng)用的地址請求的情況下,所述過程終止或返 回到調(diào)用所述過程的例行程序(步驟524)。
如果IID或地址不處于可用狀態(tài)(即,測試506二 "否"),那么所述過程確定所述 IID是否處于試驗性狀態(tài)(測試514)。如果IID正經(jīng)歷DAD過程,那么所述IID處于試
19驗性狀態(tài),如上文參看圖3針對試驗性狀態(tài)304而描述。如果IID處于試驗性狀態(tài),那 么所述過程告知應(yīng)用一旦地址可用其就將得到通知(步驟516),且將未解決的應(yīng)用請求 排成隊列,直到專用IID可用于創(chuàng)建地址為止(步驟518)。為了確定是否應(yīng)產(chǎn)生新的專 用IID,所述過程確定應(yīng)用是否已請求唯一地址(測試520)。如果應(yīng)用已請求唯一地址, 那么所述過程產(chǎn)生新的專用IID (步驟400),如上文參看圖4而描述。此新的專用IID 可存儲在緩沖器或存儲器中直到地址被請求為止,或用于產(chǎn)生新的專用地址,其存儲在 緩沖器或存儲器中直到被請求為止。由于IID正在試驗性狀態(tài)下等待DAD過程,所以 其還無法用于產(chǎn)生待指配給作出請求的應(yīng)用的地址,因此所述過程終止或返回到調(diào)用所 述過程的例行程序(步驟524)。當(dāng)DAD過程完成時,基于IID的地址將被指配給作出 請求的應(yīng)用,如下文參看圖6而描述。
如果應(yīng)用未請求唯一地址(即,測試520="否"),那么所述過程確定這是否是對 共享地址的第一請求(測試522)。如果這不是對共享地址的第一請求,那么將不產(chǎn)生新 的IID或不分配地址,或者IID正在試驗性狀態(tài)下等待DAD過程,所以其還無法被指 配給作出請求的應(yīng)用,且因此所述過程終止或返回到調(diào)用所述過程的例行程序(步驟 524)。當(dāng)DAD過程完成時,基于IID的地址將被指配給作出請求的應(yīng)用,如下文參看 圖6而描述。
如果這是對共享地址的第一請求(即,測試522="是"),那么需要指配和替換地 址,因此產(chǎn)生新的專用IID (過程400),如上文參看圖4而描述。由于IID正在試驗性 狀態(tài)下等待DAD過程,所以基于IID的地址還無法被指配給作出請求的應(yīng)用,因此所 述過程終止或返回到調(diào)用所述過程的例行程序(步驟524)。當(dāng)DAD過程完成時,基于 IID的地址將被指配給作出請求的應(yīng)用,如下文參看圖6而描述。
返回到確定IID是否處于試驗性步驟(測試514),如果IID不處于試驗性狀態(tài)(即, 測試514="否"),那么這指示沒有IID產(chǎn)生、在存儲器中可用或正經(jīng)歷DAD過程。在 此情況下,所述過程可啟始另一IID的產(chǎn)生(過程400),如上文參照圖4所描述。所述 過程可接著測試所述IID產(chǎn)生是否成功(測試526),且如果成功,那么測試所述IID是 否處于試驗性狀態(tài)(測試528)。如果此時所述IID處于試驗性狀態(tài)(即,測試528-"是"), 那么所述IID正經(jīng)歷DAD過程,因此應(yīng)用被告知當(dāng)?shù)刂房捎脮r其將得到通知(步驟516)。 其后,所述過程如上文針對步驟518到步驟524所描述而繼續(xù)。舉例來說,如果來自應(yīng) 用的請求是針對共享廣播地址,那么在測試514之后產(chǎn)生的IID將經(jīng)歷DAD過程,因 此測試528將為"是",測試520將為"否"且測試522將為"是",因為起初沒有可用 的廣播地址。因此,將產(chǎn)生第二專用IID (過程400),之后所述過程終止或返回到調(diào)用
20所述過程的例行程序(步驟524)。
如果在成功產(chǎn)生專用IID之后,確定所述IID不處于試驗性狀態(tài)(即,測試528 = "否"),那么這指示應(yīng)用請求非廣播地址(因為未啟始DAD過程)。在此情形下,所述 過程通過確定應(yīng)用是否請求唯一地址(測試508)而繼續(xù)。其后,所述過程如上文針對 步驟508到510到400到506或508到512到400到506所描述而繼續(xù)。
如果確定專用IID的產(chǎn)生(測試514之后的過程400)不成功(g卩,測試526 ="否"), 那么這指示存在錯誤條件,其出于某一原因而阻礙非冗余IID的產(chǎn)生。在此情形下,繼 續(xù)處理對地址的請求是沒有意義的,因此告知應(yīng)用已發(fā)生錯誤(步驟530),且所述過程 終止或返回到調(diào)用所述過程的例行程序(步驟524)。
圖6中說明用于在DAD過程期間管理專用IID和地址的實例實施例過程。在上文 參看圖4而描述的IID產(chǎn)生過程中所啟始的DAD過程(見步驟420)完成后啟始所述過 程(步驟600)。所述過程首先確定DAD過程是否成功(測試602)。如果DAD過程成 功,那么系統(tǒng)上沒有匹配的地址,因此所述IID可用于產(chǎn)生非冗余廣播地址,且所述過 程將IID狀態(tài)設(shè)置為"可用"(步驟605)。在IID處于可用狀態(tài)的情況下,所述IID可 用于產(chǎn)生供指配給應(yīng)用的地址,因此所述過程確定是否有任何應(yīng)用地址請求未解決(測 試606)。如果存在未解決的應(yīng)用地址請求(即,測試606="是"),那么所述過程服務(wù) 所述未解決的地址請求(步驟700),從而啟始下文參看圖7而描述的過程。 一旦那些過 程完成(即,已將所述IID指配給一個或一個以上應(yīng)用),所述過程就終止或返回到調(diào) 用所述過程的例行程序(步驟608)。然而,如果不存在未解決的應(yīng)用地址請求(即,測 試606="否"),那么所述過程終止或返回到調(diào)用所述過程的例行程序(步驟608)。
如果所述過程確定DAD過程不成功(即,測試602="否"),那么所述過程可檢查 以看DAD過程是否允許在一 IID被發(fā)現(xiàn)為冗余的情況下進(jìn)行多次嘗試以確認(rèn)不同IID (測試610)。如果所述過程確實允許多次嘗試且尚未超過最多嘗試(即,測試610="否"), 那么所述過程前進(jìn)以啟始新的專用IID的產(chǎn)生(過程400),如上文參看圖4而描述。由 于應(yīng)用己請求廣播地址(其導(dǎo)致DAD過程被啟始),所以產(chǎn)生新的IID的過程(過程400) 還將啟始DAD過程(見圖4中的步驟420),且所述過程將返回到圖6中所說明的過程 的開始(步驟600),如虛線所指示。
如果所述過程不允許最大數(shù)目的嘗試或如果已超過嘗試的最大數(shù)目(即,測試610 ="是"),那么所述過程將IID狀態(tài)設(shè)置為"自由"以指示沒有IID可用(步驟612), 且服務(wù)未解決的地址請求(步驟700),從而啟始下文參看圖7而描述的過程。 一旦那些 過程完成(即,已將IID指配給一個或一個以上應(yīng)用),所述過程就終止或返回到調(diào)用所述過程的例行程序(步驟608)。
圖7中說明服務(wù)未解決的應(yīng)用地址請求的實例實施例過程(過程700)。可由系統(tǒng)在 IID處于可用狀態(tài)時響應(yīng)于來自應(yīng)用的地址請求或通過完成上文參看圖6而描述的DAD 完成處置過程來激活過程700(步驟702)。所述過程首先確定請求是否針對共享地址(測 試704)。如果請求是針對共享地址,那么所述過程確定IID是否處于可用狀態(tài)(測試 706),且如果IID處于可用狀態(tài),那么所述過程將IID或地址狀態(tài)設(shè)置為共享(步驟708)。 所述過程接著向應(yīng)用指示地址可用(步驟710),且將所述請求從共享隊列移除(步驟 712)。所述過程進(jìn)一步確定共享隊列中是否存在更多請求(測試714),且如果不存在更 多請求,那么所述過程終止或返回到調(diào)用所述過程的例行程序或過程(步驟716)。如果 共享隊列中有更多地址請求(即,測試714二 "是"),那么所述過程返回到步驟710以 向具有共享隊列中的下一請求的應(yīng)用指示共享地址可用,其后將所述請求從共享隊列移 除(步驟712),且所述過程再次確定共享隊列中是否存在更多請求(714)。
如果IID不處于可用狀態(tài)(即,測試706="否"),那么所述過程告知應(yīng)用DAD過 程失敗已發(fā)生(步驟718),且因此提供地址的過程中將存在進(jìn)一步延遲。接著將地址請 求從共享隊列移除(步驟712)。所述過程進(jìn)一歩確定共享隊列中是否存在更多請求(測 試722),且如果不存在更多請求,那么所述過程終止或返回到調(diào)用所述過程的例行程序 (步驟716)。然而,如果共享隊列中存在更多請求(即,測試722="是"),那么所述 過程返回到步驟718以向共享隊列中的下一應(yīng)用指示DAD失敗和地址延遲,其后將請 求從共享隊列移除(步驟720),且所述過程再次確定共享隊列中是否存在更多請求 (722)。
如果請求不是針對共享地址的且因此是針對唯一地址的(即,測試722="否"), 那么所述過程確定IID (或地址)是否處于可用狀態(tài)(測試724)。如果IID處于可用狀 態(tài),那么所述過程將IID (或地址)狀態(tài)設(shè)置為唯一 (步驟726),向應(yīng)用指示地址可用 (步驟728),且將所述請求從唯一隊列移除(步驟730)。所述過程接著終止或返回到調(diào) 用所述過程的例行程序(步驟716)。
如果在測試724中IID或地址不處于可用狀態(tài)(即,測試724="否"),那么所述
過程告知應(yīng)用DAD過程失敗已發(fā)生(步驟732),且因此不可提供地址。接著將地址請
求從共享隊列移除(步驟734),且所述過程終止或返回到調(diào)用所述過程的例行程序或過
程(步驟716)。注意,如果DAD過程成功(即,圖6中的測試602二 "否"),且超過
產(chǎn)生IID時的重試的最大數(shù)目(即,圖6中的測試610="是"),那么可達(dá)到此條件。
在上文所描述且圖7中所說明的地址分配過程實施例中,以請求被接收到的次序來說明書第16/18頁
將地址分配給應(yīng)用。因此,當(dāng)產(chǎn)生每一新的地址時,將所述地址分配給隊列中剩余的第 一個應(yīng)用(先入;先出)。
為了確保當(dāng)?shù)谝淮握埱蟮刂窌r沒有延遲,系統(tǒng)可在存在來自應(yīng)用的未決請求之前, 在會話建立后產(chǎn)生專用IID或地址,如圖8中所說明。此過程在會話被建立時開始(步 驟800)。舉例來說,此過程可在裝置接收到路由器通告(RA)時啟始,所述RA提供 將結(jié)合IIP而使用以創(chuàng)建IP地址的前綴。所述過程前進(jìn)以使用上文參看圖4而描述的IID 產(chǎn)生過程400來產(chǎn)生專用IID。所述過程創(chuàng)建處于可用狀態(tài)的專用IID (見圖4所示的步 驟424),從而指示地址準(zhǔn)備就緒以應(yīng)請求而指配給應(yīng)用。此專用IID可存儲在緩沖器或 存儲器中直到地址被請求為止,或用于產(chǎn)生新的專用地址,其存儲在緩沖器或存儲器中 直到被請求為止??舍槍γ恳唤涌谥貜?fù)此過程。對于廣播接口, IID將經(jīng)歷DAD過程(見 圖4所示的步驟420)。 一旦專用IID或地址被創(chuàng)建,所述過程就終止或返回到調(diào)用所述 過程的例行程序或過程(步驟804)。
提供以上實施例過程作為本發(fā)明的可能實施方案的實例,且所述過程的變型在所附 權(quán)利要求書的范圍內(nèi)。舉例來說,用于在DAD期間和之后管理專用IID和地址的過程 可并入用于產(chǎn)生IID的過程400內(nèi),例如圖9中所說明。此組合式IID產(chǎn)生過程400A 包含與上文參看圖4而描述的步驟相同的步驟(圖4的對圖9所示的相同步驟的描述以 引用的方式并入此處),且添加圖5和圖6所示的步驟。明確地說,在確定地址是針對 廣播媒體的(測試408)后,所述過程將IID狀態(tài)設(shè)置為試驗性的(步驟410),向應(yīng)用 指示當(dāng)?shù)刂房捎脮r其將得到通知(步驟516),將地址請求排入隊列中(步驟518),且 啟始DAD過程(步驟412)。當(dāng)DAD過程412完成時,過程可確定DAD是否成功(即, IID并非冗余)(測試602)。如果DAD成功,那么將IID狀態(tài)設(shè)置為可用(步驟424), 且所述過程返回到調(diào)用其的例行程序(步驟422)。
如果DAD過程不成功(即,測試602二 "否"),那么過程可檢査以看DAD過程是 否允許以在一IID被發(fā)現(xiàn)為冗余的情況下進(jìn)行多次嘗試以確認(rèn)不同IID (測試610)。如 果所述過程確實允許多次嘗試且尚未超過嘗試的最大數(shù)目(即,測試610="否"),那 么可刪除副本IID (過程卯4),其后所述過程返回到步驟402以產(chǎn)生另一64位隨機(jī)數(shù)。 此循環(huán)可繼續(xù)直到DAD過程成功(即,測試602="是")或超過產(chǎn)生可用IID時重試 的最大數(shù)目(即,測試610="是")為止。
如果所述過程不允許最大數(shù)目的重試嘗試或如果已超過嘗試的最大數(shù)目(即,測試 610="是"),那么所述過程將IID狀態(tài)設(shè)置為"自由",以指示沒有IID或地址可用(步 驟612),且所述過程返回到調(diào)用其的例行程序(步驟422)。上文所描述的各種實施例可在移動話機(jī)中實施,所述移動話機(jī)配置有用于通過有線 和無線接口連接到多種有線和無線網(wǎng)絡(luò)的電路和軟件。圖IO提供此移動話機(jī)10的實例 實施例的框圖,所述移動話機(jī)10可以是蜂窩式電話、具有多媒體因特網(wǎng)功能的蜂窩式 電話、個人數(shù)字助理、電子音樂文件(例如,MP3)播放器,和/或無線電子郵件接收器 中的任一者。此移動話機(jī)IO可包含耦合到存儲器12和顯示器13的處理器11。移動話 機(jī)10還可包含許多數(shù)據(jù)輸入/輸出接口,例如蜂窩式電話數(shù)據(jù)接收器、有線(例如,火 線(FireWire))數(shù)據(jù)鏈路、藍(lán)牙無線數(shù)據(jù)鏈路以及紅外線數(shù)據(jù)鏈路(未圖示)。舉例來 說,移動話機(jī)10可包含天線14,其用于從無線網(wǎng)絡(luò)傳輸器/接收器節(jié)點(未圖示)接 收電磁信號;以及無線收發(fā)器15,其連接到天線14以用于接收無線信號并將所述信號 轉(zhuǎn)換成中繼到處理器11的數(shù)字?jǐn)?shù)據(jù)。類似地,藍(lán)牙或類似的本地?zé)o線數(shù)據(jù)鏈路可包含 連接到WiFi、藍(lán)牙、WLAN、 WiMax等的天線14 (或未單獨(dú)展示的另 一天線),以及將 接收到的無線信號轉(zhuǎn)換成中繼到處理器11的數(shù)字?jǐn)?shù)據(jù)的收發(fā)器18。還可借助有線數(shù)據(jù) 鏈路(例如,火線、USB、串口 (例如,RS-232))或以太網(wǎng)數(shù)據(jù)鏈路將數(shù)據(jù)傳輸?shù)揭?動話機(jī)10以及從移動話機(jī)IO傳輸數(shù)據(jù)。舉例來說,可借助耦合到火線調(diào)制解調(diào)器電路 20的火線數(shù)據(jù)連接器19來傳輸數(shù)據(jù),所述火線調(diào)制解調(diào)器電路20將從連接器19接收 到的數(shù)據(jù)轉(zhuǎn)換成中繼到處理器11的數(shù)字?jǐn)?shù)據(jù)。如此項技術(shù)中眾所周知,其它有線數(shù)據(jù) 鏈路將涉及適合于特定數(shù)據(jù)鏈路的類似電路。
蜂窩式電話數(shù)據(jù)接收器15;有線數(shù)據(jù)鏈路19、 20;無線數(shù)據(jù)鏈路18以及IR數(shù)據(jù) 鏈路(未圖示)中的每一者是應(yīng)用可請求處理器提供共享或唯一地址所針對的接口。另 外,可在移動話機(jī)10內(nèi)實施其它接口,以用于在其它模塊與協(xié)處理器之間傳遞數(shù)據(jù)。 因此,為了使用專用地址來建立數(shù)據(jù)連接,應(yīng)用必須從接口獲得地址并將其套接字中的 一者綁定到所述地址。
可由執(zhí)行上文所描述的實施例方法中的一者或一者以上的處理器11 (例如)通過執(zhí) 行經(jīng)配置以實施所述方法中的一者或一者以上的軟件指令來產(chǎn)生專用地址。此些軟件指 令可作為API、作為裝置的操作系統(tǒng)的一部分,或作為實施實施例方法的經(jīng)編譯軟件而 存儲在存儲器12中。
處理器11可以是通用處理器、數(shù)字信號處理器(DSP)、專用集成電路(ASIC)、 現(xiàn)場可編程門陣列(FPGA)或其它可編程邏輯裝置、離散門或晶體管邏輯、離散硬件 組件或其經(jīng)設(shè)計以執(zhí)行本文所述功能的任何組合。通用處理器可以是微處理器,但在替 代方案中,處理器可以是任何常規(guī)處理器、控制器、微控制器或狀態(tài)機(jī)。處理器還可實 施為計算裝置的組合,例如DSP與微處理器、多個微處理器、DSP核心與一個或一個以
24上微處理器的組合,或任何其它此類配置。
上文所描述的各實施例允許裝置(例如,移動話機(jī)IO)產(chǎn)生專用地址,而不影響原 本在響應(yīng)于地址請求而產(chǎn)生IID的情況下所需裝置的性能。所述各實施例在具有較多保 密擔(dān)憂且以頻繁的網(wǎng)絡(luò)連接操作的蜂窩式電話裝置的情況下尤其有利。通過避免與產(chǎn)生 專用地址相關(guān)聯(lián)的鏈路建立延遲,所述各實施例可改進(jìn)用戶的體驗。
用于實施以上實施例的事件的硬件可以是經(jīng)配置以執(zhí)行指令集的處理元件和存儲 器元件,其中所述指令集用于執(zhí)行對應(yīng)于以上事件的方法步驟?;蛘撸?一些事件可由專
門用于給定功能的電路執(zhí)行。
所屬領(lǐng)域的技術(shù)人員將了解,可將結(jié)合本文所揭示的實施例而描述的各種說明性邏 輯區(qū)塊、模塊、電路和算法步驟實施為電子硬件、計算機(jī)軟件或上述兩者的組合。為了 清楚地說明硬件與軟件的這種可互換性,上文已大體上對各種說明性組件、區(qū)塊、模塊、 電路和步驟的功能性進(jìn)行了描述。將此功能性實施為硬件還是軟件取決于特定應(yīng)用和強(qiáng) 加于整個系統(tǒng)的設(shè)計約束。熟練的技術(shù)人員可針對每一特定應(yīng)用以不同的方式來實施所 描述的功能性,但這些實施決策不應(yīng)被解釋為導(dǎo)致與本發(fā)明的范圍脫離。
結(jié)合本文所揭示的實施例而描述的方法或算法的步驟可直接在硬件中、在由處理器 執(zhí)行的軟件模塊中或在上述兩者的組合中實施。軟件模塊可駐存在處理器可讀存儲器12 中,所述處理器可讀存儲器12可以是RAM存儲器、快閃存儲器、ROM存儲器、EPROM 存儲器、EEPROM存儲器、寄存器、硬盤、可移除盤、CD-ROM或此項技術(shù)中己知的 任何其它形式的存儲媒體中的任一者。示范性存儲媒體11耦合到處理器11,使得處理 器11可從存儲媒體12讀取信息并向存儲媒體12寫入信息。在替代方案中,存儲媒體 可與處理器11成一體式。處理器11和存儲媒體11可駐存在ASIC中。ASIC可駐存在 用戶終端中。在替代方案中,處理器11和存儲媒體12可作為離散組件駐存在用戶終端 中。
提供各種實施例的先前描述以使所屬領(lǐng)域的技術(shù)人員能夠制作或使用本發(fā)明。所屬 領(lǐng)域的技術(shù)人員將容易明白對這些實施例的各種修改,且本文所定義的一般原理可在不 脫離本發(fā)明的精神或范圍的情況下應(yīng)用于其它實施例。因此,不希望本發(fā)明限于本文所 展示的實施例,而是應(yīng)賦予本發(fā)明與本文所揭示的原理和新穎特征一致的最寬范圍。
權(quán)利要求
1. 一種將保密地址分配給應(yīng)用的方法,其包括從存儲器回調(diào)第一保密地址;將所述第一保密地址分配給所述應(yīng)用;立即產(chǎn)生第二保密地址;以及將所述第二保密地址存儲在存儲器中。
2. 根據(jù)權(quán)利要求1所述的將保密地址分配給所述應(yīng)用的方法,其進(jìn)一步包括確定所述應(yīng)用是否正請求唯一地址;以及如果所述應(yīng)用正請求唯一地址,那么僅將所述第一保密地址分配給所述應(yīng)用。
3. 根據(jù)權(quán)利要求1所述的將保密地址分配給所述應(yīng)用的方法,其進(jìn)一步包括確定所述應(yīng)用是否正請求共享地址;如果所述應(yīng)用正請求共享地址,那么將所述第一保密地址分配給所述應(yīng)用,同時 將所述第一保密地址保存在存儲器中以供分配給其它請求共享地址的應(yīng)用;以及 當(dāng)所述作出請求的應(yīng)用綁定到所述第一保密地址吋,啟動反對計時器。
4. 根據(jù)權(quán)利要求1所述的將保密地址分配給所述應(yīng)用的方法,其中在接收到所述應(yīng)用 對地址的請求之前產(chǎn)生所述第一保密地址。
5. 根據(jù)權(quán)利要求1所述的將保密地址分配給所述應(yīng)用的方法,其進(jìn)一步包括對所述第 二保密地址執(zhí)行副本地址確定。
6. 根據(jù)權(quán)利要求2所述的將保密地址分配給所述應(yīng)用的方法,其進(jìn)一步包括在所述應(yīng) 用解開所述第一保密地址時刪除所述第一保密地址。
7. 根據(jù)權(quán)利要求3所述的將保密地址分配給所述應(yīng)用的方法,其進(jìn)一步包括維持所述第一保密地址上的指示綁定到所述第一保密地址的應(yīng)用的數(shù)目的參考 計數(shù);以及當(dāng)(1)所述反對計時器期滿和(2)所述參考計數(shù)等于零時,刪除所述第一保密 地址。
8. 根據(jù)權(quán)利要求l所述的將保密地址分配給所述應(yīng)用的方法,其進(jìn)一步包括如果所述應(yīng)用在預(yù)設(shè)的時間周期內(nèi)未綁定到所述第一保密地址,那么刪除所述第 一保密地址;以及告知所述應(yīng)用所述第一保密地址被刪除。
9. 一種移動話機(jī),其包括處理器;至少一個網(wǎng)絡(luò)接口,其耦合到所述處理器;以及存儲器,其耦合到處理器,所述存儲器中存儲有處理器可執(zhí)行軟件指令,所述處 理器可執(zhí)行軟件指令經(jīng)配置以使所述處理器執(zhí)行包括以下各項的步驟 從所述存儲器回調(diào)第一保密地址; 將所述第一保密地址分配給應(yīng)用; 立即產(chǎn)生第二保密地址;以及 將所述第二保密地址存儲在所述存儲器中。
10. 根據(jù)權(quán)利要求9所述的移動話機(jī),其中存儲在所述存儲器中的所述處理器可執(zhí)行軟 件指令經(jīng)配置以使所述處理器執(zhí)行進(jìn)一步包括以下各項的步驟確定所述應(yīng)用是否正請求唯一地址;以及如果所述應(yīng)用正請求唯一地址,那么僅將所述第一保密地址分配給所述應(yīng)用。
11. 根據(jù)權(quán)利要求9所述的移動話機(jī),其中存儲在所述存儲器中的所述處理器可執(zhí)行軟 件指令經(jīng)配置以使所述處理器執(zhí)行進(jìn)一步包括以下各項的步驟確定所述應(yīng)用是否正請求共享地址;如果所述應(yīng)用正請求共享地址,那么將所述第一保密地址分配給所述應(yīng)用,同時 將所述第一保密地址保存在存儲器中以供分配給其它請求共享地址的應(yīng)用;以及 當(dāng)所述作出請求的應(yīng)用綁定到所述第一保密地址時,啟動反對計時器。
12. 根據(jù)權(quán)利要求9所述的移動話機(jī),其中存儲在所述存儲器中的所述處理器可執(zhí)行軟 件指令經(jīng)配置以使所述處理器在接收到所述應(yīng)用對地址的請求之前產(chǎn)生所述第一 保密地址。
13. 根據(jù)權(quán)利要求9所述的移動話機(jī),其中存儲在所述存儲器中的所述處理器可執(zhí)行軟 件指令經(jīng)配置以使所述處理器執(zhí)行進(jìn)一步包括對所述第二保密地址執(zhí)行副本地址 確定的步驟。
14. 根據(jù)權(quán)利要求10所述的移動話機(jī),其中存儲在所述存儲器中的所述處理器可執(zhí)行 軟件指令經(jīng)配置以使所述處理器執(zhí)行進(jìn)一步包括在所述應(yīng)用解開所述第一保密地 址時刪除所述第一保密地址的步驟。
15. 根據(jù)權(quán)利要求11所述的移動話機(jī),其中存儲在所述存儲器中的所述處理器可執(zhí)行 軟件指令經(jīng)配置以使所述處理器執(zhí)行進(jìn)一步包括以下各項的步驟-維持所述第一保密地址上的指示綁定到所述第一保密地址的應(yīng)用的數(shù)目的參考 計數(shù);以及當(dāng)(1)所述反對計時器期滿和(2)所述參考計數(shù)等于零時,刪除所述第一保密 地址。
16. 根據(jù)權(quán)利要求9所述的移動話機(jī),其中存儲在所述存儲器中的所述處理器可執(zhí)行軟 件指令經(jīng)配置以使所述處理器執(zhí)行進(jìn)一步包括以下各項的步驟如果所述應(yīng)用在預(yù)設(shè)的時間周期內(nèi)未綁定到所述第一保密地址,那么刪除所述第 一保密地址;以及告知所述應(yīng)用所述第一保密地址被刪除。
17. —種移動話機(jī),其包括用于從存儲器回調(diào)第一保密地址的裝置; 用于將所述第一保密地址分配給應(yīng)用的裝置;用于立即產(chǎn)生第二保密地址的裝置;以及用于將所述第二保密地址存儲在所述存儲器中的裝置。
18. 根據(jù)權(quán)利要求17所述的移動話機(jī),其進(jìn)一步包括用于確定所述應(yīng)用是否正請求唯一地址的裝置;以及用于在所述應(yīng)用正請求唯一地址的情況下僅將所述第一保密地址分配給所述應(yīng) 用的裝置。
19. 根據(jù)權(quán)利要求17所述的移動話機(jī),其進(jìn)一步包括用于確定所述應(yīng)用是否正請求共享地址的裝置;用于在所述應(yīng)用正請求共享地址的情況下將所述第一保密地址分配給所述應(yīng)用 同時將所述第一保密地址保存在存儲器中以供分配給其它請求共享地址的應(yīng)用的 裝置;以及用于在所述作出請求的應(yīng)用綁定到所述第一保密地址時啟動反對計時器的裝置。
20. 根據(jù)權(quán)利要求17所述的移動話機(jī),其進(jìn)一步包括用于在接收到所述應(yīng)用對地址的 請求之前產(chǎn)生所述第一保密地址的裝置。
21. 根據(jù)權(quán)利要求17所述的移動話機(jī),其進(jìn)一步包括用于對所述第二保密地址執(zhí)行副 本地址確定的裝置。
22. 根據(jù)權(quán)利要求18所述的移動話機(jī),其進(jìn)一步包括用于在所述應(yīng)用解開所述第一保 密地址時刪除所述第一保密地址的裝置。
23. 根據(jù)權(quán)利要求19所述的移動話機(jī),其進(jìn)一步包括用于維持所述第一保密地址上的指示綁定到所述第一保密地址的應(yīng)用的數(shù)目的 參考計數(shù)的裝置;以及用于在(1)所述反對計時器期滿和(2)所述參考計數(shù)等于零時刪除所述第一保 密地址的裝置。
24. 根據(jù)權(quán)利要求17所述的移動話機(jī),其進(jìn)一步包括用于在所述應(yīng)用在預(yù)設(shè)的時間周期內(nèi)未綁定到所述第一保密地址的情況下刪除 所述第一保密地址的裝置;以及,用于告知所述應(yīng)用所述第一保密地址被刪除的裝置。
25. —種上面存儲有處理器可執(zhí)行指令的處理器可讀有形存儲媒體,所述處理器可執(zhí)行 指令經(jīng)配置以使所述處理器執(zhí)行包括以下各項的步驟從存儲器回調(diào)第一保密地址; 將所述第一保密地址分配給應(yīng)用;立即產(chǎn)生第二保密地址;以及 將所述第二保密地址存儲在所述存儲器中。
26. 根據(jù)權(quán)利要求25所述的處理器可讀有形存儲媒體,其中所述存儲的處理器可執(zhí)行 軟件指令經(jīng)配置以使所述處理器執(zhí)行進(jìn)一步包括以下各項的步驟確定所述應(yīng)用是否正請求唯一地址;以及如果所述應(yīng)用正請求唯一地址,那么僅將所述第一保密地址分配給所述應(yīng)用。
27. 根據(jù)權(quán)利要求25所述的處理器可讀有形存儲媒體,其中所述所存儲的處理器可執(zhí) 行軟件指令經(jīng)配置以使所述處理器執(zhí)行進(jìn)一步包括以下各項的步驟-確定所述應(yīng)用是否正請求共享地址;如果所述應(yīng)用正請求共享地址,那么將所述第一保密地址分配給所述應(yīng)用,同時 將所述第一保密地址保存在存儲器中以供分配給其它請求共享地址的應(yīng)用;以及 當(dāng)所述作出請求的應(yīng)用綁定到所述第一保密地址時,啟動反對計時器。
28. 根據(jù)權(quán)利要求25所述的處理器可讀有形存儲媒體,其中所述所存儲的處理器可執(zhí) 行軟件指令經(jīng)配置以使所述處理器在接收到所述應(yīng)用對地址的請求之前產(chǎn)生所述 第一保密地址。
29. 根據(jù)權(quán)利要求25所述的處理器可讀有形存儲媒體,其中所述所存儲的處理器可執(zhí) 行軟件指令經(jīng)配置以使所述處理器執(zhí)行進(jìn)一步包括對所述第二保密地址執(zhí)行副本 地址確定的步驟。
30. 根據(jù)權(quán)利要求26所述的處理器可讀有形存儲媒體,其中所述所存儲的處理器可執(zhí) 行軟件指令經(jīng)配置以使所述處理器執(zhí)行進(jìn)一步包括在所述應(yīng)用解開所述第一保密 地址時刪除所述第一保密地址的步驟。
31. 根據(jù)權(quán)利要求27所述的處理器可讀有形存儲媒體,其中所述所存儲的處理器可執(zhí) 行軟件指令經(jīng)配置以使所述處理器執(zhí)行進(jìn)一步包括以下各項的步驟維持所述第一保密地址上的指示綁定到所述第一保密地址的應(yīng)用的數(shù)目的參考 計數(shù);以及當(dāng)(1)所述反對計時器期滿和(2)所述參考計數(shù)等于零時,刪除所述第一保密 地址。
32.根據(jù)權(quán)利要求25所述的處理器可讀有形存儲媒體,其中所述所存儲的處理器可執(zhí) 行軟件指令經(jīng)配置以使所述處理器執(zhí)行進(jìn)一步包括以下各項的步驟如果所述應(yīng)用在預(yù)設(shè)的時間周期內(nèi)未綁定到所述第一保密地址,那么刪除所述第 一保密地址;以及告知所述應(yīng)用所述第一保密地址被刪除。
全文摘要
一種用于產(chǎn)生保密IP地址的方法包含預(yù)產(chǎn)生第一保密地址;以及當(dāng)將所述第一保密地址分配給一應(yīng)用時產(chǎn)生第二保密地址。地址可由多個應(yīng)用共享或?qū)我粦?yīng)用是唯一的。現(xiàn)當(dāng)產(chǎn)生所述保密地址時,當(dāng)一應(yīng)用綁定到所分配的保密地址時,啟動反對計時器。為了使業(yè)務(wù)流中斷減到最小,在遭反對的地址保持在使用中時不刪除所述地址。通過預(yù)產(chǎn)生保密地址,可將地址即時分配給應(yīng)用,而不會有由確認(rèn)新地址不是系統(tǒng)上的副本而引起的延遲。使用保密地址的任何裝置上可牽涉到所述方法,所述裝置包含移動話機(jī)裝置。
文檔編號H04L29/12GK101523871SQ200780034741
公開日2009年9月2日 申請日期2007年9月24日 優(yōu)先權(quán)日2006年9月25日
發(fā)明者烏品德爾·辛格·巴巴爾, 邁克爾·C·特里梅因, 馬爾切諾·利奧伊 申請人:高通股份有限公司