本申請(qǐng)要求遞交于2015年1月27日的序列號(hào)14606810的美國(guó)專(zhuān)利申請(qǐng)的權(quán)益,其要求遞交于2014年7月13日的美國(guó)臨時(shí)申請(qǐng)序列號(hào)62/023,883的35U.S.C§119(e)的優(yōu)先權(quán)。所有前述申請(qǐng)的內(nèi)容通過(guò)引用全部結(jié)合于此。
發(fā)明領(lǐng)域
本公開(kāi)涉及信息中心網(wǎng)絡(luò)(ICN)系統(tǒng)架構(gòu)。更具體地,本公開(kāi)涉及用于鏈接到在ICN系統(tǒng)架構(gòu)中的內(nèi)容的方法與系統(tǒng)。
技術(shù)背景
許多網(wǎng)絡(luò)架構(gòu)允許第一方(諸如第一計(jì)算設(shè)備、第一實(shí)體、第一公司等等)鏈接到內(nèi)容,該內(nèi)容由第二方(諸如第二計(jì)算設(shè)備、第二實(shí)體、第二公司等等)所擁有、管理、和/或運(yùn)營(yíng)。例如,在因特網(wǎng)(諸如萬(wàn)維網(wǎng)(WWW))中,第一方可以提供到第二方的內(nèi)容的鏈接(諸如超文本鏈接)。因?yàn)樵谠S多網(wǎng)絡(luò)架構(gòu)(諸如因特網(wǎng))上的內(nèi)容/資源可以具有全球可尋址的標(biāo)識(shí)符(例如統(tǒng)一資源定位符(URL)、統(tǒng)一資源標(biāo)識(shí)符(URI)等等),任何方都可以創(chuàng)建到第二方的內(nèi)容的鏈接。
附圖說(shuō)明
為使本領(lǐng)域技術(shù)人員能夠理解本公開(kāi),參考某些示例性實(shí)現(xiàn)方式的一些方面進(jìn)行了更詳細(xì)的描述,附圖示出了這些方面的一些:
圖1是根據(jù)一些實(shí)施例,示出系統(tǒng)架構(gòu)的框圖;
圖2是根據(jù)一些實(shí)施例,示出用于鏈接到內(nèi)容的示例處理的時(shí)序圖;
圖3A是根據(jù)一些實(shí)施例,示出示例的建議的鏈接對(duì)象的框圖;
圖3B是根據(jù)一些實(shí)施例,示出示例的經(jīng)認(rèn)證的鏈接對(duì)象的框圖;
圖4A到圖4D是根據(jù)一些實(shí)施例,示出示例的未決興趣表(PIT)的框圖;
圖5是根據(jù)一些實(shí)施例,示出生成經(jīng)認(rèn)證的鏈接對(duì)象的方法的流程圖;
圖6是根據(jù)一些實(shí)施例,示出請(qǐng)求經(jīng)認(rèn)證的鏈接對(duì)象的方法的流程圖;
圖7是根據(jù)一些實(shí)施例,示出訪(fǎng)問(wèn)到內(nèi)容的鏈接的方法的流程圖;
圖8是根據(jù)一些實(shí)施例,示出計(jì)算設(shè)備的框圖;
圖9是根據(jù)一些實(shí)施例,示出計(jì)算設(shè)備的框圖;
圖10是根據(jù)一些實(shí)施例,示出計(jì)算設(shè)備的框圖。
示例的實(shí)施例
本文描述了大量的細(xì)節(jié),以提供對(duì)附圖所示出的示例性實(shí)現(xiàn)方式的透徹理解。然而,附圖僅僅示出了本公開(kāi)的一些示例的方面,并且因此不應(yīng)該被認(rèn)為是限制性的。本領(lǐng)域一般技術(shù)人員會(huì)從本公開(kāi)中理解,其他有效的方面和/或變化并非包含本文所描述的所有具體的細(xì)節(jié)。此外,眾所周知的系統(tǒng)、方法、組件、設(shè)備、以及電路沒(méi)有以非常詳盡的方式描述,以免不必要模糊本文所描述的實(shí)現(xiàn)方式的更多相關(guān)的方面。
概括
本文所描述的各種實(shí)現(xiàn)方式包括用于請(qǐng)求、生成、和/或使用經(jīng)認(rèn)證的鏈接對(duì)象的裝置、系統(tǒng)、以及方法。例如,在一些實(shí)現(xiàn)方式中,一種方法包括從鏈接所有者接收針對(duì)經(jīng)認(rèn)證的鏈接對(duì)象的第一興趣消息,其中經(jīng)認(rèn)證的鏈接對(duì)象鏈接到內(nèi)容所有者的內(nèi)容。該方法還包括基于第一興趣消息向鏈接所有者傳輸針對(duì)建議的鏈接對(duì)象的第二興趣消息。該方法還包括從鏈接所有者接收建議的鏈接對(duì)象,其中建議的鏈接對(duì)象包括由鏈接所有者生成的第一簽名。該方法還包括確定鏈接所有者是否被允許鏈接到內(nèi)容,以及當(dāng)鏈接所有者被允許鏈接到內(nèi)容的時(shí)候,傳輸經(jīng)認(rèn)證的鏈接對(duì)象到鏈接所有者,該經(jīng)認(rèn)證的鏈接對(duì)象包括用于內(nèi)容的第一名稱(chēng)、第一簽名、以及由內(nèi)容所有者生成的第二簽名。
在其他實(shí)現(xiàn)方式中,一種方法包括向內(nèi)容所有者傳輸對(duì)于經(jīng)認(rèn)證的鏈接對(duì)象的第一興趣消息,其中經(jīng)認(rèn)證的鏈接對(duì)象鏈接到內(nèi)容所有者的內(nèi)容,并且從內(nèi)容所有者接收針對(duì)建議的鏈接對(duì)象的第二興趣消息。該方法還包括向內(nèi)容所有者傳輸建議的鏈接對(duì)象,其中建議的鏈接對(duì)象包括由鏈接所有者生成的第一簽名。該方法還包括從內(nèi)容所有者接收經(jīng)認(rèn)證的鏈接對(duì)象,其中經(jīng)認(rèn)證的鏈接對(duì)象包括用于內(nèi)容的第一名稱(chēng)、第一簽名、以及由內(nèi)容所有者生成第二簽名。
在其他實(shí)施方式中,一種方法包括向鏈接所有者傳輸針對(duì)鏈接對(duì)象的興趣消息,其中鏈接對(duì)象鏈接到內(nèi)容所有者的內(nèi)容。該方法還包括接收鏈接對(duì)象,其中鏈接對(duì)象包括鏈接所有者的第一簽名、內(nèi)容所有者的第二簽名、內(nèi)容的第一名稱(chēng)、以及鏈接對(duì)象的第二名稱(chēng)。該方法還包括基于第一簽名以及第二簽名確定鏈接對(duì)象是否有效,并且當(dāng)鏈接對(duì)象有效的時(shí)候訪(fǎng)問(wèn)內(nèi)容。
詳細(xì)描述
如以上所描述的,許多網(wǎng)絡(luò)架構(gòu)(諸如因特網(wǎng)或WWW)允許第一方鏈接到由第二方所擁有、管理、和/或運(yùn)營(yíng)的內(nèi)容。鏈接通??赡苁菃蜗虻模⑶业诙匠32⒉磺宄谝环绞欠褚焰溄拥降诙降膬?nèi)容。這可能對(duì)于第二方造成問(wèn)題。例如,一些搜索引擎可能基于鏈接到第一資源的其他資源(諸如其他內(nèi)容)的質(zhì)量來(lái)估計(jì)第一資源(諸如內(nèi)容)的質(zhì)量。因此,如果鏈接到第一資源的其他資源是不可信任的,那么搜索引擎可能確定第一資源的質(zhì)量更低。此外,鏈接并不僅僅用來(lái)將用戶(hù)導(dǎo)向原始內(nèi)容,還可能被用來(lái)(例如通過(guò)網(wǎng)頁(yè)瀏覽器渲染)植入原始內(nèi)容。這可以使得追蹤原始內(nèi)容的所有權(quán)更加困難。例如,內(nèi)容所有者可能沒(méi)有辦法表明內(nèi)容所有者是否已經(jīng)允許某一方鏈接到內(nèi)容所有者的內(nèi)容,和/或植入內(nèi)容所有者的內(nèi)容。并且,鏈接可能隨時(shí)間而斷開(kāi)。例如,由鏈接所引用的內(nèi)容可能改變位置和/或不再可用。由于猜測(cè)地追隨鏈接以及預(yù)先下載由鏈接引用的內(nèi)容的花銷(xiāo),網(wǎng)頁(yè)瀏覽器常常不能自動(dòng)地檢測(cè)斷開(kāi)的鏈接。
信息中心網(wǎng)絡(luò)(ICN)系統(tǒng)架構(gòu)越來(lái)越流行。ICN系統(tǒng)架構(gòu)的示例包括命名數(shù)據(jù)網(wǎng)絡(luò)(NDN)系統(tǒng)架構(gòu)以及內(nèi)容中心網(wǎng)絡(luò)(CCN)系統(tǒng)架構(gòu)。ICN系統(tǒng)架構(gòu)(諸如NDN系統(tǒng)架構(gòu))可以允許消費(fèi)者(諸如客戶(hù)端設(shè)備)使用興趣消息以請(qǐng)求數(shù)據(jù),該興趣消息標(biāo)識(shí)所請(qǐng)求的數(shù)據(jù)的名稱(chēng)。生產(chǎn)者(例如所請(qǐng)求數(shù)據(jù)的生成者,諸如服務(wù)器計(jì)算設(shè)備)可以接收興趣消息并且可以向消費(fèi)者傳輸數(shù)據(jù)對(duì)象。通過(guò)ICN系統(tǒng)架構(gòu),用興趣消息和/或數(shù)據(jù)對(duì)象中的名稱(chēng)來(lái)路由和/或轉(zhuǎn)發(fā)興趣消息和/或數(shù)據(jù)對(duì)象。
在一些實(shí)施例中,系統(tǒng)架構(gòu)可以使用NDN系統(tǒng)架構(gòu)。在NDN系統(tǒng)架構(gòu)中,內(nèi)容所有者可以允許鏈接所有者(例如擁有、管理、和/或運(yùn)營(yíng)到內(nèi)容所有者的內(nèi)容的鏈接的實(shí)體)從內(nèi)容所有者請(qǐng)求經(jīng)認(rèn)證的鏈接對(duì)象。當(dāng)內(nèi)容所有者接收到請(qǐng)求經(jīng)認(rèn)證的鏈接對(duì)象的興趣消息時(shí),內(nèi)容所有者得知那些希望鏈接到它的內(nèi)容的鏈接所有者。內(nèi)容所有者可以請(qǐng)求來(lái)自鏈接所有者所建議的鏈接對(duì)象,并且可以通過(guò)分析建議的鏈接對(duì)象而確定是否允許鏈接所有者鏈接到內(nèi)容所有者的內(nèi)容。如果內(nèi)容所有者允許鏈接所有者鏈接到內(nèi)容所有者的內(nèi)容,那么內(nèi)容所有者可以生成經(jīng)認(rèn)證的鏈接對(duì)象并且向鏈接所有者傳輸經(jīng)認(rèn)證的鏈接對(duì)象。經(jīng)認(rèn)證的鏈接對(duì)象可以允許用戶(hù)來(lái)核實(shí)內(nèi)容所有者是否認(rèn)為由經(jīng)認(rèn)證的鏈接對(duì)象所鏈接到(例如所引用)的內(nèi)容是有效的,并且可以允許用戶(hù)確認(rèn)內(nèi)容所有者已經(jīng)允許鏈接所有者鏈接到內(nèi)容。
盡管本公開(kāi)可以涉及NDN系統(tǒng)架構(gòu),但應(yīng)當(dāng)理解NDN系統(tǒng)架構(gòu)僅僅是可以采用的示例的架構(gòu)。其他實(shí)施例可以采用其他類(lèi)型的系統(tǒng)架構(gòu)(諸如CCN、Pursuit、NetInf等等),并且本文所描述的示例、實(shí)現(xiàn)方式、和/或?qū)嵤├梢耘c其他類(lèi)型的系統(tǒng)架構(gòu)一起被采用。
圖1是根據(jù)一些實(shí)施例的示出系統(tǒng)架構(gòu)100的框圖。該系統(tǒng)架構(gòu)包括內(nèi)容所有者110、鏈接所有者120、網(wǎng)絡(luò)105、路由器140、客戶(hù)端設(shè)備130、數(shù)據(jù)存儲(chǔ)庫(kù)115、以及數(shù)據(jù)存儲(chǔ)庫(kù)125。系統(tǒng)架構(gòu)100可以是NDN系統(tǒng)架構(gòu)。例如,在系統(tǒng)架構(gòu)100中的消費(fèi)者(諸如客戶(hù)端設(shè)備130)可以用興趣包來(lái)請(qǐng)求數(shù)據(jù),并且生產(chǎn)者(例如內(nèi)容所有者110)可以用數(shù)據(jù)對(duì)象(例如NDN數(shù)據(jù)對(duì)象)來(lái)傳輸所請(qǐng)求的數(shù)據(jù)。內(nèi)容所有者110可以被稱(chēng)為生產(chǎn)者,并且客戶(hù)端設(shè)備130可以被稱(chēng)為消費(fèi)者或請(qǐng)求者。
內(nèi)容所有者110可以是一個(gè)或多個(gè)計(jì)算設(shè)備(諸如機(jī)架式服務(wù)器、路由器計(jì)算機(jī)、服務(wù)器計(jì)算機(jī)、個(gè)人計(jì)算機(jī)、大型計(jì)算機(jī)、智能手機(jī)、個(gè)人數(shù)字助手(PDA)、膝上型計(jì)算機(jī)、平板電腦、臺(tái)式計(jì)算機(jī)等等)。客戶(hù)端設(shè)備130也可以是計(jì)算設(shè)備(諸如個(gè)人計(jì)算機(jī)、智能手機(jī)、個(gè)人數(shù)字助手(PDA)、膝上型計(jì)算機(jī)、平板電腦、臺(tái)式計(jì)算機(jī)等等)。網(wǎng)絡(luò)105可以包括以下一個(gè)或多個(gè):公共網(wǎng)絡(luò)(例如因特網(wǎng))、個(gè)人網(wǎng)絡(luò)(例如局域網(wǎng)(LAN)或廣域網(wǎng)(WAN))、有線(xiàn)網(wǎng)絡(luò)(例如以太網(wǎng))、無(wú)線(xiàn)網(wǎng)(例如802.11網(wǎng)絡(luò)或Wi-Fi網(wǎng)絡(luò))、蜂窩網(wǎng)絡(luò)(諸如長(zhǎng)期演進(jìn)(LTE)網(wǎng)絡(luò))、路由器、集線(xiàn)器、交換機(jī)、服務(wù)器計(jì)算機(jī)、和/或它們的結(jié)合。在一個(gè)實(shí)施例中,內(nèi)容所有者110可以是擁有、管理、和/或運(yùn)營(yíng)鏈接所有者120可能希望鏈接到的內(nèi)容的某方、實(shí)體、和/或計(jì)算設(shè)備。在一個(gè)實(shí)施例中,鏈接所有者120可以是某方、實(shí)體、和/或計(jì)算設(shè)備,該方、實(shí)體、和/或計(jì)算設(shè)備希望鏈接到內(nèi)容所有者110的內(nèi)容。
數(shù)據(jù)存儲(chǔ)庫(kù)115可以是存儲(chǔ)器(諸如隨機(jī)存取存儲(chǔ)器)、緩存、驅(qū)動(dòng)器(例如硬盤(pán)驅(qū)動(dòng)器)、閃存驅(qū)動(dòng)器、數(shù)據(jù)庫(kù)系統(tǒng)、和/或能夠存儲(chǔ)數(shù)據(jù)的其他類(lèi)型的組件/設(shè)備。數(shù)據(jù)存儲(chǔ)庫(kù)115還可以包括多個(gè)存儲(chǔ)組件(例如多個(gè)驅(qū)動(dòng)器或多個(gè)數(shù)據(jù)庫(kù)),該多個(gè)存儲(chǔ)組件還可以橫跨多個(gè)計(jì)算設(shè)備(例如多個(gè)服務(wù)器計(jì)算機(jī))。數(shù)據(jù)存儲(chǔ)庫(kù)115包括內(nèi)容116(諸如NDN數(shù)據(jù)對(duì)象、文本、圖像、視頻、文件、網(wǎng)頁(yè)、書(shū)、和/或其他數(shù)據(jù)等等)。在一個(gè)實(shí)施例中,內(nèi)容所有者110可以直接耦接到數(shù)據(jù)存儲(chǔ)庫(kù)115。在另一個(gè)實(shí)施例中,內(nèi)容所有者110可以通過(guò)網(wǎng)絡(luò)105耦接到數(shù)據(jù)存儲(chǔ)庫(kù)115。數(shù)據(jù)存儲(chǔ)庫(kù)125也可以是存儲(chǔ)器、緩存、驅(qū)動(dòng)器、閃存驅(qū)動(dòng)器、數(shù)據(jù)庫(kù)系統(tǒng)、和/或能夠儲(chǔ)存數(shù)據(jù)的其他類(lèi)型的組件/設(shè)備。數(shù)據(jù)存儲(chǔ)庫(kù)125還可以包括多個(gè)存儲(chǔ)組件,該多個(gè)存儲(chǔ)組件還可以跨越多個(gè)計(jì)算設(shè)備。數(shù)據(jù)存儲(chǔ)庫(kù)125包括內(nèi)容126。
在一個(gè)實(shí)施例中,內(nèi)容所有者110可以具有內(nèi)容(諸如NDN數(shù)據(jù)對(duì)象、文本、圖像、視頻、文件、網(wǎng)頁(yè)、書(shū)、和/或其他數(shù)據(jù)等等),其他計(jì)算設(shè)備可以通過(guò)網(wǎng)絡(luò)103訪(fǎng)問(wèn)該內(nèi)容。例如,內(nèi)容所有者110可以允許客戶(hù)端設(shè)備130訪(fǎng)問(wèn)內(nèi)容116。如上文所討論的,鏈接所有者120可能希望包括到屬于內(nèi)容所有者110的內(nèi)容116的鏈接。鏈接所有者120可以從內(nèi)容所有者110請(qǐng)求經(jīng)認(rèn)證的鏈接對(duì)象(如以下所討論的)。在一個(gè)實(shí)施例中,經(jīng)認(rèn)證的鏈接對(duì)象可以是到內(nèi)容所有者110的內(nèi)容116的鏈接。經(jīng)認(rèn)證的鏈接對(duì)象還可以是NDN數(shù)據(jù)對(duì)象(或CCN數(shù)據(jù)對(duì)象),它可以表明某方/計(jì)算設(shè)備(諸如鏈接所有者120)被允許和/或被認(rèn)證以鏈接到內(nèi)容(例如被認(rèn)證以鏈接到NDN數(shù)據(jù)對(duì)象)。經(jīng)認(rèn)證的鏈接對(duì)象還可以被用來(lái)確定由經(jīng)認(rèn)證的鏈接對(duì)象所鏈接(例如,所引用)的內(nèi)容是否有效(例如可以被用來(lái)表明鏈接沒(méi)有斷開(kāi))。
內(nèi)容所有者110包括鏈接認(rèn)證模塊111。在一個(gè)實(shí)施例中,鏈接認(rèn)證模塊111可以是應(yīng)用、服務(wù)、守護(hù)進(jìn)程、處理、組件等等,該應(yīng)用、服務(wù)、守護(hù)進(jìn)程、處理、組件等等允許其他計(jì)算設(shè)備(諸如鏈接所有者120)請(qǐng)求認(rèn)證和/或許可以鏈接到內(nèi)容所有者110的內(nèi)容(諸如內(nèi)容116)。在一個(gè)實(shí)施例中,鏈接認(rèn)證模塊111可以是用對(duì)于鏈接認(rèn)證模塊的名稱(chēng)(諸如可路由的名稱(chēng)或前綴)可到達(dá)的。例如,鏈接認(rèn)證模塊111可以是用包括鏈接認(rèn)證模塊111的名稱(chēng)的興趣消息可訪(fǎng)問(wèn)的。鏈接認(rèn)證模塊111可以從鏈接所有者120接收請(qǐng)求經(jīng)認(rèn)證的鏈接對(duì)象的第一興趣消息(例如興趣包)。第一興趣消息可以包括第二名稱(chēng)(如下文將被詳細(xì)討論的)。第二名稱(chēng)可以是鏈接所有者120的建議的鏈接對(duì)象的名稱(chēng),并且可以允許鏈接認(rèn)證模塊111從鏈接所有者120請(qǐng)求所建議的鏈接對(duì)象。內(nèi)容所有者110可以向內(nèi)容所有者110傳輸?shù)诙d趣消息以請(qǐng)求建議的鏈接對(duì)象。鏈接認(rèn)證模塊111可以分析建議的鏈接對(duì)象并且確定是否許可和/或認(rèn)證鏈接所有者120鏈接到內(nèi)容116(如下文將被詳細(xì)討論的)。如果鏈接認(rèn)證模塊許可和/或認(rèn)證鏈接所有者120鏈接到內(nèi)容116,那么認(rèn)證模塊111可以向鏈接所有者120傳輸經(jīng)認(rèn)證的鏈接對(duì)象。經(jīng)認(rèn)證的鏈接對(duì)象的內(nèi)容與建議的鏈接對(duì)象在下文中被詳細(xì)討論。
鏈接所有者120包括鏈接模塊121。在一個(gè)實(shí)施例中,鏈接模塊121可以是從內(nèi)容所有者110請(qǐng)求經(jīng)認(rèn)證的鏈接對(duì)象(例如可以請(qǐng)求對(duì)鏈接到內(nèi)容116的許可)的應(yīng)用、服務(wù)、守護(hù)進(jìn)程、處理、組件等等。鏈接模塊121可以向鏈接認(rèn)證模塊111傳輸?shù)谝慌d趣消息(以請(qǐng)求經(jīng)認(rèn)證的鏈接對(duì)象)。如上文所討論的,第一興趣消息可以包括鏈接認(rèn)證模塊111的名稱(chēng)。鏈接認(rèn)證模塊111的名稱(chēng)可以先驗(yàn)地由鏈接模塊121所知,或由鏈接認(rèn)證模塊111所確定。例如,鏈接模塊121可以訪(fǎng)問(wèn)數(shù)據(jù)庫(kù)、表格等等,該數(shù)據(jù)庫(kù)、表格等等可以包括鏈接認(rèn)證模塊111的名稱(chēng)。鏈接模塊121還可以訪(fǎng)問(wèn)網(wǎng)絡(luò)服務(wù)以獲取鏈接認(rèn)證模塊111的名稱(chēng)。在另一個(gè)示例中,鏈接模塊121能夠基于內(nèi)容116的名稱(chēng)(例如基于內(nèi)容116的名稱(chēng)的前綴或部分)來(lái)確定鏈接認(rèn)證模塊111的名稱(chēng)。鏈接模塊121可以從內(nèi)容所有者110接收第二興趣消息,并且可以基于(例如響應(yīng)于)第二興趣消息向內(nèi)容所有者110傳輸建議的鏈接對(duì)象。如上文所討論的,如果鏈接所有者120被許可和/或認(rèn)證鏈接到內(nèi)容116,那么鏈接模塊121可以接收經(jīng)認(rèn)證的鏈接對(duì)象。
客戶(hù)端設(shè)備130包括應(yīng)用131。應(yīng)用131可以是允許用戶(hù)訪(fǎng)問(wèn)內(nèi)容(例如內(nèi)容116和126)的應(yīng)用(例如網(wǎng)頁(yè)瀏覽器)。內(nèi)容126可以包括鏈接到內(nèi)容116的鏈接對(duì)象(例如經(jīng)認(rèn)證的鏈接對(duì)象)。應(yīng)用131可以分析鏈接對(duì)象以確定鏈接對(duì)象是否有效。例如,應(yīng)用131可以確定鏈接對(duì)象是否包括由鏈接所有者120生成的第一簽名、以及由內(nèi)容所有者110生成的第二簽名。在一個(gè)實(shí)施例中,如果任何一個(gè)簽名缺失,則應(yīng)用131可以確定鏈接是無(wú)效的。在另一個(gè)實(shí)施例中,如果任何一個(gè)簽名到期和/或無(wú)效,則應(yīng)用可以確定鏈接是無(wú)效的。例如,應(yīng)用131可以用鏈接所有者120與內(nèi)容所有者110的公共密鑰來(lái)確定第一和第二簽名是否到期和/或無(wú)效。如果這些簽名中的一個(gè)或多個(gè)是無(wú)效的,則應(yīng)用131可以確定鏈接已被篡改并且無(wú)法安全地訪(fǎng)問(wèn)。在一個(gè)實(shí)施例中,應(yīng)用131還可以用內(nèi)容所有者110的公共密鑰來(lái)確定鏈接對(duì)象是否有效。例如,如果內(nèi)容所有者的密鑰到期或被廢除,那么鏈接不再有效或者鏈接所有者120不再被允許鏈接到內(nèi)容。
系統(tǒng)架構(gòu)100還可以包括路由器140。路由器140可以是可以在內(nèi)容所有者110與客戶(hù)端設(shè)備130之間路由和/或轉(zhuǎn)發(fā)數(shù)據(jù)的通信設(shè)備(例如計(jì)算設(shè)備,諸如路由器、交換機(jī)等等)。例如,路由器140可以從鏈接所有者120接收對(duì)于經(jīng)認(rèn)證的鏈接對(duì)象的請(qǐng)求,并且可以向內(nèi)容所有者110轉(zhuǎn)發(fā)請(qǐng)求。內(nèi)容所有者110可以通過(guò)路由器140向鏈接所有者120傳輸經(jīng)認(rèn)證的鏈接對(duì)象。每一個(gè)路由器140可以包括緩存141。如上文所討論的,系統(tǒng)架構(gòu)100可以是NDN系統(tǒng)架構(gòu)。NDN系統(tǒng)架構(gòu)可以允許路由器140在它們的相應(yīng)緩存141中儲(chǔ)存(例如緩存)NDN數(shù)據(jù)對(duì)象(例如經(jīng)認(rèn)證的鏈接對(duì)象、建議的鏈接對(duì)象等等)。當(dāng)路由器140從客戶(hù)端設(shè)備130接收對(duì)于NDN數(shù)據(jù)對(duì)象的請(qǐng)求(例如興趣包)并且路由器140在它的緩存141中儲(chǔ)存有該NDN數(shù)據(jù)對(duì)象的時(shí)候,路由器140可以響應(yīng)于請(qǐng)求來(lái)向客戶(hù)端設(shè)備130傳輸NDN數(shù)據(jù)對(duì)象,而不是向內(nèi)容所有者110轉(zhuǎn)發(fā)請(qǐng)求。這可以減少網(wǎng)絡(luò)105中的網(wǎng)絡(luò)擁堵的量。在一個(gè)實(shí)施例中,緩存141還可以允許多路徑以及多目的地的路由,而無(wú)需使用域名系統(tǒng)(DNS)查找、負(fù)載平衡器、以及代理。
在一個(gè)實(shí)施例中,當(dāng)鏈接所有者120希望鏈接到內(nèi)容116的時(shí)候,系統(tǒng)架構(gòu)100可以允許內(nèi)容所有者110被告知。內(nèi)容所有者110可以認(rèn)證和/或許可鏈接所有者鏈接到內(nèi)容116。因?yàn)楫?dāng)一個(gè)實(shí)體希望鏈接到內(nèi)容116的時(shí)候(例如當(dāng)鏈接所有者120傳輸?shù)谝慌d趣消息和/或建議的鏈接對(duì)象的時(shí)候),內(nèi)容所有者110會(huì)被告知,所以?xún)?nèi)容所有者110能夠追蹤和/或監(jiān)控哪些實(shí)體(諸如鏈接所有者)正在請(qǐng)求鏈接到內(nèi)容116的認(rèn)證/許可。在另一個(gè)實(shí)施例中,系統(tǒng)架構(gòu)100可以允許鏈接所有者120向用戶(hù)(諸如客戶(hù)端設(shè)備130)證明鏈接所有者120被允許(例如被許可和/或被認(rèn)證)鏈接到內(nèi)容所有者110的內(nèi)容116。在另一個(gè)實(shí)施例中,系統(tǒng)架構(gòu)100可以允許用戶(hù)核實(shí)到內(nèi)容116的鏈接(例如鏈接對(duì)象),和/或核實(shí)鏈接所有者已經(jīng)從內(nèi)容所有者110獲取了鏈接到內(nèi)容116的許可。
盡管圖1可以涉及NDN系統(tǒng)架構(gòu),但應(yīng)當(dāng)理解NDN系統(tǒng)架構(gòu)僅僅是可以采用的示例架構(gòu)。其他的實(shí)施例可以采用其他類(lèi)型的系統(tǒng)架構(gòu)(諸如CCN、Pursuit、NetInf等等)。
圖2根據(jù)一些實(shí)施例示出了用于鏈接到內(nèi)容的示例處理的時(shí)序圖200。如上文結(jié)合圖1所討論的,鏈接所有者120可以希望鏈接到內(nèi)容116。例如,鏈接所有者120可以希望在鏈接所有者120的內(nèi)容126中鏈接到內(nèi)容116(例如,鏈接所有者120的網(wǎng)頁(yè)可以包括到內(nèi)容所有者110的網(wǎng)頁(yè)的鏈接)。如在圖2中所示出的,鏈接所有者120可以傳輸興趣消息205以請(qǐng)求到內(nèi)容116的鏈接。例如,鏈接所有者120可以傳輸興趣消息205來(lái)請(qǐng)求經(jīng)認(rèn)證的鏈接對(duì)象。興趣消息205可以由路由器140所接收(例如在第一網(wǎng)絡(luò)接口或第一網(wǎng)絡(luò)端口處所接收),并且路由器140可以向內(nèi)容所有者110轉(zhuǎn)發(fā)該消息(例如可以用第二網(wǎng)絡(luò)接口或第二網(wǎng)絡(luò)端口來(lái)轉(zhuǎn)發(fā)消息)。興趣消息205可以包括內(nèi)容所有者110的鏈接認(rèn)證模塊的名稱(chēng)(例如鏈接認(rèn)證模塊111的名稱(chēng))。鏈接認(rèn)證模塊的名稱(chēng)可以允許路由器140向內(nèi)容所有者110(例如向內(nèi)容所有者110的鏈接認(rèn)證模塊)轉(zhuǎn)發(fā)(例如路由)興趣消息205。如上文所討論的,鏈接認(rèn)證模塊的名稱(chēng)可以由鏈接所有者120事先所知,和/或可以基于鏈接所有者120希望鏈接到的內(nèi)容的名稱(chēng)而被確定。
在一個(gè)實(shí)施例中,興趣消息205還可以包括第二名稱(chēng)(例如單獨(dú)的第二名稱(chēng))。第二名稱(chēng)可以是建議的鏈接對(duì)象215的名稱(chēng)。建議的鏈接對(duì)象的內(nèi)容在下文中將被詳細(xì)討論。在興趣消息205中包括第二名稱(chēng)可以允許鏈接所有者120向內(nèi)容所有者提供建議的鏈接對(duì)象的名稱(chēng)(例如第二名稱(chēng)),使得內(nèi)容所有者110能夠從鏈接所有者120請(qǐng)求建議的鏈接對(duì)象(例如使得內(nèi)容所有者110能夠傳輸興趣消息210)。第二名稱(chēng)可以被稱(chēng)為反身名稱(chēng)或數(shù)據(jù)對(duì)象定位符。在一個(gè)實(shí)施例中,鏈接所有者120可以在傳輸興趣消息205之前生成建議的鏈接對(duì)象。在另一個(gè)實(shí)施例中,鏈接所有者120可以在接收興趣消息210之后可以生成建議的鏈接對(duì)象。
當(dāng)內(nèi)容所有者110接收興趣消息205時(shí),內(nèi)容所有者110可以被告知:鏈接所有者120希望鏈接到內(nèi)容所有者110的內(nèi)容。在一個(gè)實(shí)施例中,內(nèi)容所有者110能夠在塊206處可選地確定是否向鏈接所有者傳輸興趣消息210(以請(qǐng)求建議的鏈接對(duì)象)。例如,如上文所討論的,興趣消息205可以包括第二名稱(chēng),并且第二名稱(chēng)可以是建議的鏈接對(duì)象的名稱(chēng)(例如可以是到內(nèi)容所有者110的內(nèi)容的鏈接的名稱(chēng))。內(nèi)容所有者110可以分析第二名稱(chēng)(例如分析第二名稱(chēng)的部分或前綴)以確定是否向鏈接所有者120傳輸興趣消息210。例如,第二名稱(chēng)可以包括鏈接所有者120的名稱(chēng)(例如鏈接所有者120的公司的名稱(chēng)),并且內(nèi)容所有者110可以基于鏈接所有者120的名稱(chēng)來(lái)確定鏈接所有者120是否可信任。如果內(nèi)容所有者110確定應(yīng)該向鏈接所有者120傳輸興趣消息210(例如確定鏈接所有者120可能是可信任的),那么內(nèi)容所有者110繼續(xù)向鏈接所有者120傳輸興趣消息210。如果內(nèi)容所有者110確定興趣消息210不應(yīng)該被傳輸?shù)芥溄铀姓?20,那么內(nèi)容所有者110可以制止傳輸興趣消息210(例如可以不傳輸興趣消息210)。
在一個(gè)實(shí)施例中,第二名稱(chēng)(諸如建議的鏈接對(duì)象的名稱(chēng))可以是可路由的名稱(chēng)??陕酚傻拿Q(chēng)可以是這樣的名稱(chēng):該名稱(chēng)允許路由器(例如路由器140)用路由器的轉(zhuǎn)發(fā)信息庫(kù)(FIB)來(lái)路由興趣消息或數(shù)據(jù)對(duì)象(諸如NDN數(shù)據(jù)對(duì)象)。例如,可路由的名稱(chēng)可以是在NDN網(wǎng)絡(luò)架構(gòu)中全局已知的和/或認(rèn)可的名稱(chēng)。在另一個(gè)示例中,可路由的名稱(chēng)可以是這樣的名稱(chēng):該名稱(chēng)的前綴和/或部分存在于路由器的FIB中。在另一個(gè)實(shí)施例中,第二名稱(chēng)可以是不可路由的名稱(chēng)。不可路由的名稱(chēng)可以是在NDN網(wǎng)絡(luò)架構(gòu)中并非全局已知的和/或認(rèn)可的名稱(chēng)。不可路由的名稱(chēng)還可以是這樣的名稱(chēng):路由器的FIB之中不存在該名稱(chēng)的前綴/部分。FIB結(jié)合圖4A到4D在以下被詳細(xì)討論。
當(dāng)內(nèi)容所有者110傳輸興趣消息210的時(shí)候,路由器140接收興趣消息210,并且路由器140向鏈接所有者120轉(zhuǎn)發(fā)(例如路由)興趣消息210(例如用FIB和/或PIT來(lái)路由或轉(zhuǎn)發(fā)興趣消息210)。當(dāng)鏈接所有者120接收興趣消息210的時(shí)候,鏈接所有者120可以通過(guò)傳輸建議的鏈接對(duì)象215以響應(yīng)于興趣消息210。如上文所討論的,建議的鏈接對(duì)象215包括第二名稱(chēng)(例如建議的鏈接對(duì)象215的名稱(chēng))。路由器140可以接收建議的鏈接對(duì)象215并且可以向內(nèi)容所有者110轉(zhuǎn)發(fā)(例如路由)建議的鏈接對(duì)象215。建議的鏈接對(duì)象215可以滿(mǎn)足興趣消息205。
在一個(gè)實(shí)施例中,內(nèi)容所有者110可以接收建議的鏈接對(duì)象215,并且可以基于建議的鏈接對(duì)象215在塊216處確定是否向鏈接所有者120傳輸經(jīng)認(rèn)證的鏈接對(duì)象220。例如,內(nèi)容所有者110(例如內(nèi)容所有者110的鏈接認(rèn)證模塊)可以分析建議的鏈接對(duì)象,并且可以確定建議的鏈接對(duì)象215的簽名是否有效。在另一個(gè)示例中,內(nèi)容所有者110還可以分析目標(biāo)內(nèi)容名稱(chēng)(例如鏈接所有者120希望鏈接到的內(nèi)容所有者110的內(nèi)容的名稱(chēng)),并且可以用建議的鏈接名稱(chēng)來(lái)確定其他方(諸如鏈接所有者120、其他計(jì)算設(shè)備等等)是否應(yīng)該具有對(duì)于內(nèi)容的訪(fǎng)問(wèn)。在另一示例中,內(nèi)容所有者還可以分析建議的鏈接對(duì)象的名稱(chēng)來(lái)確定鏈接所有者是否可信任。如果內(nèi)容所有者110基于建議的鏈接對(duì)象215確定鏈接所有者120沒(méi)有被允許(例如沒(méi)有被許可和/或認(rèn)證)鏈接到內(nèi)容,那么內(nèi)容所有者110可以制止生成經(jīng)認(rèn)證的鏈接對(duì)象220和/或向鏈接所有者120傳輸經(jīng)認(rèn)證的鏈接對(duì)象220(未在圖2中示出)。如果內(nèi)容所有者110基于建議的鏈接對(duì)象215確定鏈接所有者120被允許(例如被許可和/或認(rèn)證)鏈接到內(nèi)容,那么內(nèi)容所有者110可以生成經(jīng)認(rèn)證的鏈接對(duì)象220,并且可以傳輸經(jīng)認(rèn)證的鏈接對(duì)象220。路由器140可以接收經(jīng)認(rèn)證的鏈接對(duì)象220,并且可以向鏈接所有者120轉(zhuǎn)發(fā)(例如路由)經(jīng)認(rèn)證的鏈接對(duì)象220。經(jīng)認(rèn)證的鏈接對(duì)象220可以滿(mǎn)足興趣消息210.
在一個(gè)實(shí)施例中,因?yàn)榕d趣消息210具有鏈接認(rèn)證模塊的名稱(chēng),所以經(jīng)認(rèn)證的鏈接對(duì)象220可以被包裹在具有鏈接認(rèn)證模塊的名稱(chēng)的NDN數(shù)據(jù)對(duì)象中。例如,經(jīng)認(rèn)證的鏈接對(duì)象220可以被包括在NDN數(shù)據(jù)對(duì)象中,和/或可以是NDN數(shù)據(jù)對(duì)象的一部分。在另一個(gè)實(shí)施例中,經(jīng)認(rèn)證的鏈接對(duì)象220可以被包裹在CCN數(shù)據(jù)對(duì)象中。例如,經(jīng)認(rèn)證的鏈接對(duì)象220可以被包括在CCN數(shù)據(jù)對(duì)象中,和/或是CCN數(shù)據(jù)對(duì)象的一部分。
在另一個(gè)實(shí)施例中,鏈接所有者120可以用其他消息、功能、和/或操作來(lái)向內(nèi)容所有者提供建議的鏈接對(duì)象215。例如,鏈接所有者120可以不在興趣消息205中使用第二名稱(chēng)(諸如反身名稱(chēng)/數(shù)據(jù)定位符)。鏈接所有者120可以生成建議的鏈接對(duì)象215(如上文所討論的)。鏈接所有者120可以傳輸另一類(lèi)型的興趣消息205,該興趣消息205包括到內(nèi)容所有者110的有效載荷。鏈接所有者120可以在興趣消息205的有效載荷中包括建議的鏈接對(duì)象215。因?yàn)榻ㄗh的鏈接對(duì)象215可以是從鏈接所有者120所接收的初始興趣消息205的一部分,所以?xún)?nèi)容所有者110可以接收建議的鏈接對(duì)象215而無(wú)需傳輸興趣消息210。
圖3A是根據(jù)一些實(shí)施例,示出了示例的建議的鏈接對(duì)象300的框圖。如上文結(jié)合圖1以及圖2所討論的,鏈接所有者(諸如鏈接所有者120)可以基于(例如響應(yīng)于)從內(nèi)容所有者所接收的興趣消息(例如NDN興趣消息/包)生成建議的鏈接對(duì)象300,和/或向內(nèi)容所有者(例如內(nèi)容所有者110)傳輸建議的鏈接對(duì)象300。建議的鏈接對(duì)象300包括鏈接名稱(chēng)301、目標(biāo)內(nèi)容名稱(chēng)302、以及簽名303。簽名303可以包括以下的一個(gè)或多個(gè):1)鏈接301與目標(biāo)內(nèi)容名稱(chēng)302的安全散列;2)對(duì)于用哪種散列算法來(lái)生成安全散列的指示符(諸如SHA-1、MD5等等);3)對(duì)于用哪種簽名算法來(lái)生成簽名303的指示符;以及4)表明可以用哪個(gè)公共密鑰來(lái)核實(shí)簽名303的指示符(諸如密鑰定位符字段)。在其他實(shí)施例中,簽名303可以包括附加的字段和/或數(shù)據(jù)。
如上文所討論的,建議的鏈接對(duì)象300可以是建議的鏈接,該鏈接鏈接到內(nèi)容所有者的內(nèi)容(例如由內(nèi)容所有者所擁有的、管理的、和/或運(yùn)營(yíng)的內(nèi)容)。例如,建議的鏈接對(duì)象300可以被視作對(duì)于鏈接到內(nèi)容的請(qǐng)求?;?例如響應(yīng)于)從請(qǐng)求建議的鏈接對(duì)象300的內(nèi)容所有者所接收的興趣消息,可以向內(nèi)容所有者傳輸建議的鏈接對(duì)象300。在一個(gè)實(shí)施例中,目標(biāo)內(nèi)容名稱(chēng)302可是內(nèi)容所有者的內(nèi)容的名稱(chēng)。例如,目標(biāo)內(nèi)容名稱(chēng)302可以是建議的鏈接對(duì)象可以鏈接到的(內(nèi)容所有者的)內(nèi)容的名稱(chēng)。鏈接名稱(chēng)301可以是建議鏈接的名稱(chēng)(例如可以是經(jīng)認(rèn)證的鏈接對(duì)象的建議名稱(chēng))。建議的鏈接對(duì)象300還包括簽名303。一個(gè)實(shí)施例中,簽名303可以安全地綁定鏈接所有者(例如生成建議的鏈接對(duì)象300的實(shí)體)、鏈接名稱(chēng)301、以及目標(biāo)內(nèi)容名稱(chēng)302。例如,簽名303可以用鏈接所有者的私有密鑰(例如秘密密鑰)、鏈接名稱(chēng)301、以及目標(biāo)內(nèi)容名稱(chēng)302所生成??梢杂煤灻?03與鏈接所有者的公共密鑰一起來(lái)確定和/或確認(rèn)鏈接所有者的身份。
圖3B是根據(jù)一些實(shí)施例,示出了經(jīng)認(rèn)證的鏈接對(duì)象350的示例的框圖。如上文結(jié)合圖1與圖2所討論的,內(nèi)容所有者(例如內(nèi)容所有者110)可以基于(例如響應(yīng)于)從鏈接所有者所接收的興趣消息(例如NDN興趣消息/包)來(lái)生成經(jīng)認(rèn)證的鏈接對(duì)象350,和/或向鏈接所有者(例如鏈接所有者120)傳輸經(jīng)認(rèn)證的鏈接對(duì)象350。經(jīng)認(rèn)證的鏈接對(duì)象350包括鏈接名稱(chēng)351、目標(biāo)內(nèi)容名稱(chēng)352、簽名353、簽名354、以及到期時(shí)間355。在一個(gè)實(shí)施例中,到期時(shí)間355可以是可選的(例如到期時(shí)間355可以不是經(jīng)認(rèn)證的鏈接對(duì)象350的一部分)。簽名353可以包括以下一個(gè)或多個(gè):1)鏈接名稱(chēng)351與目標(biāo)內(nèi)容名稱(chēng)352的安全散列;2)用來(lái)生成安全散列的散列算法的指示符;3)對(duì)于用了哪種簽名算法來(lái)生成該簽名的指示符;以及4)表明可以用哪個(gè)公共密鑰來(lái)核實(shí)簽名353的標(biāo)識(shí)符(例如密鑰定位符字段)。簽名354可以包括以下一個(gè)或多個(gè):1)鏈接名稱(chēng)351、目標(biāo)內(nèi)容名稱(chēng)352、以及到期時(shí)間355(當(dāng)?shù)狡跁r(shí)間355被包括的時(shí)候)的安全散列;2)用于生成安全散列的散列算法的指示符;3)表明用了哪種簽名算法來(lái)生成簽名354的指示符;以及4)表明哪個(gè)公共密鑰可以被用來(lái)核實(shí)簽名354的標(biāo)識(shí)符(例如密鑰定位符字段)。在另一個(gè)實(shí)施例中,簽名353和/或354可以包括附加的字段和/或數(shù)據(jù)。
如上文所討論的,經(jīng)認(rèn)證的鏈接對(duì)象350可以是鏈接到內(nèi)容所有者的內(nèi)容(例如由內(nèi)容所有者所擁有、管理、和/或運(yùn)營(yíng)的內(nèi)容)的鏈接。經(jīng)認(rèn)證的鏈接對(duì)象350可以表明內(nèi)容所有者已允許(例如認(rèn)證和/或許可)鏈接所有者鏈接到內(nèi)容??梢曰?例如響應(yīng)于)從請(qǐng)求經(jīng)認(rèn)證的鏈接對(duì)象350的內(nèi)容所有者處接收的興趣消息,向內(nèi)容所有者傳輸經(jīng)認(rèn)證的鏈接對(duì)象350。在一個(gè)實(shí)施例中,目標(biāo)內(nèi)容名稱(chēng)352可以是內(nèi)容所有者的內(nèi)容的名稱(chēng)。例如,目標(biāo)內(nèi)容名稱(chēng)352可以是經(jīng)認(rèn)證的鏈接對(duì)象可以鏈接到的(內(nèi)容所有者的)內(nèi)容的名稱(chēng)。鏈接名稱(chēng)351可以是到內(nèi)容所有者的內(nèi)容的經(jīng)認(rèn)證的鏈接的名稱(chēng)(例如可以是經(jīng)認(rèn)證的鏈接對(duì)象的名稱(chēng))。經(jīng)認(rèn)證的鏈接對(duì)象350還包括簽名353。在一個(gè)實(shí)施例中,簽名354可以安全地綁定內(nèi)容所有者(例如產(chǎn)生經(jīng)認(rèn)證的鏈接對(duì)象350的實(shí)體)、鏈接名稱(chēng)351、目標(biāo)內(nèi)容名稱(chēng)352、以及簽名353。例如,簽名354可以用內(nèi)容所有者的私有密鑰(例如秘密密鑰)、鏈接名稱(chēng)351、目標(biāo)內(nèi)容名稱(chēng)352、以及到期時(shí)間355(如果到期時(shí)間355被包括的話(huà))而生成。用內(nèi)容所有者的公共密鑰可以核實(shí)簽名354,和/或可以用簽名354來(lái)確定和/或確認(rèn)內(nèi)容所有者的身份。用鏈接所有者的公共密鑰可以核實(shí)簽名353,和/或可以用簽名353來(lái)確定和/或確認(rèn)鏈接所有者的身份。
在一個(gè)實(shí)施例中,內(nèi)容所有者可以創(chuàng)建公共/私有密鑰對(duì)、和/或簽名354,使得在一段時(shí)間之后內(nèi)容所有者的私有密鑰與公共密鑰和/或簽名354到期(例如內(nèi)容所有者的私有密鑰與公共密鑰具有有限的生命期)。這可以允許內(nèi)容所有者對(duì)鏈接所有者被允許鏈接到內(nèi)容所有者的內(nèi)容的時(shí)間量進(jìn)行限制。例如,內(nèi)容所有者的公共密鑰可以在經(jīng)認(rèn)證的鏈接對(duì)象被創(chuàng)建之后一個(gè)月到期。這可以允許鏈接所有者鏈接到內(nèi)容所有者的內(nèi)容一個(gè)月的時(shí)間。在該月過(guò)去之后,公共密鑰可以到期,并且用戶(hù)可以確定鏈接所有者不再具有鏈接到內(nèi)容所有者的內(nèi)容的許可。在另一個(gè)實(shí)施例中,內(nèi)容所有者可以指定到期時(shí)間(針對(duì)經(jīng)認(rèn)證的鏈接對(duì)象350),該到期時(shí)間短于私有密鑰與公共密鑰對(duì)的到期時(shí)間(例如生命期)。例如,經(jīng)認(rèn)證的鏈接對(duì)象350可以包括(可選的)到期時(shí)間355,該到期時(shí)間355可以表明經(jīng)認(rèn)證的鏈接對(duì)象350可以保持有效的時(shí)間長(zhǎng)度。在另一個(gè)示例中,到期時(shí)間355可以表明時(shí)刻(例如日期、時(shí)間戳等等),在該時(shí)刻之后經(jīng)認(rèn)證的鏈接對(duì)象到期。當(dāng)經(jīng)認(rèn)證的鏈接對(duì)象350包括到期時(shí)間355的時(shí)候,可以用內(nèi)容所有者的私有密鑰、鏈接名稱(chēng)351、目標(biāo)內(nèi)容名稱(chēng)352、以及到期時(shí)間355來(lái)生成簽名354。
圖4A到圖4D是根據(jù)一些實(shí)施例,示出了示例的未決興趣表(PIT)400A到400D的框圖。如上文所討論的,路由器(例如在圖中所示出的路由器140)可以包括多個(gè)網(wǎng)絡(luò)接口(例如多個(gè)網(wǎng)絡(luò)端口和/或網(wǎng)絡(luò)連接)。路由器可以接收興趣消息(諸如NDN興趣消息、CCN興趣消息等等),并且可以在計(jì)算設(shè)備之間(例如在鏈接所有者與內(nèi)容所有者之間)轉(zhuǎn)發(fā)/路由興趣消息。例如,路由器可以在第一網(wǎng)絡(luò)接口(例如第一端口)處接收興趣消息、并且可以用第二網(wǎng)絡(luò)接口(例如第二端口)轉(zhuǎn)發(fā)/路由該興趣消息。路由器還可以響應(yīng)于興趣消息接收數(shù)據(jù)對(duì)象,并且可以在計(jì)算設(shè)備之間轉(zhuǎn)發(fā)/路由數(shù)據(jù)對(duì)象(例如NDN數(shù)據(jù)對(duì)象、CCN數(shù)據(jù)對(duì)象)。例如,路由器可以在第二網(wǎng)絡(luò)接口處接收數(shù)據(jù)對(duì)象、并且可以用第一網(wǎng)絡(luò)接口轉(zhuǎn)發(fā)/路由數(shù)據(jù)對(duì)象。
路由器可以包括轉(zhuǎn)發(fā)信息庫(kù)(FIB)。FIB(未在圖中示出)可以由基于名稱(chēng)的路由協(xié)議所填充。FIB可以基于在興趣消息和或數(shù)據(jù)對(duì)象中的名稱(chēng)的前綴和/或部分,來(lái)表明應(yīng)該用路由器的哪個(gè)網(wǎng)絡(luò)接口來(lái)轉(zhuǎn)發(fā)/路由興趣消息和/或數(shù)據(jù)對(duì)象。例如,興趣消息可以包括名稱(chēng)“/company1/video/video1(/公司1/視頻/視頻1)”。FIB可以表明興趣消息和/或數(shù)據(jù)對(duì)象的前綴“/company1”應(yīng)該被轉(zhuǎn)發(fā)/路由到第一網(wǎng)絡(luò)接口(例如通過(guò)第一網(wǎng)絡(luò)接口傳輸)。路由器還可以包括PIT。PIT可以?xún)?chǔ)存正在等待返回的數(shù)據(jù)對(duì)象的興趣消息的列表(例如未被滿(mǎn)足的興趣消息的列表)。在PIT中的每一個(gè)條目可以包括興趣消息的名稱(chēng)以及網(wǎng)絡(luò)接口的集合,具有該名稱(chēng)的興趣消息是從上述網(wǎng)絡(luò)接口的集合接收的。
如圖4A中所示出的,PIT 400A包括條目405。條目405可以表明具有名稱(chēng)“/website1/link_auth_service(/網(wǎng)站1/鏈接_認(rèn)證_服務(wù))”的第一興趣消息是從路由器的第三網(wǎng)絡(luò)接口處接收的。參考回圖2,在興趣消息205被路由器所接收之后,條目405可以被創(chuàng)建。路由器可以用FIB來(lái)確定應(yīng)該用哪個(gè)網(wǎng)絡(luò)接口來(lái)轉(zhuǎn)發(fā)/路由興趣消息205。
如在圖4B中所示出的,PIT 400B包括條目405與條目410。條目410可以表明具有名稱(chēng)“/webste2/page1/link1(/網(wǎng)站2/網(wǎng)頁(yè)1/鏈接1)”的第二興趣消息是從路由器的第六網(wǎng)絡(luò)接口處所接收的。參考回圖2,在興趣消息210由路由器所接收之后,條目410可以被創(chuàng)建。在一個(gè)實(shí)施例中,第一興趣消息(對(duì)應(yīng)于條目405)可以包括第二名稱(chēng)(例如上文所討論的反身名稱(chēng)或數(shù)據(jù)對(duì)象定位符)。在第二興趣消息中以及在條目410中的名稱(chēng)可以是第一興趣消息的第二名稱(chēng)。在一個(gè)實(shí)施例中,第二名稱(chēng)(例如“/website2/page1/link1)可以是可路由的名稱(chēng)(例如具有前綴或部分的名稱(chēng),該前綴或部分可以是FIB的一部分)。如果第二名稱(chēng)是可路由的名稱(chēng),那么路由器可以用FIB來(lái)路由或轉(zhuǎn)發(fā)第二興趣消息。例如,F(xiàn)IB可以表明應(yīng)該通過(guò)路由器的第六網(wǎng)絡(luò)接口來(lái)路由或轉(zhuǎn)發(fā)第二名稱(chēng)的前綴“/website2”。在另一個(gè)實(shí)施例中,第二名稱(chēng)可以不是可路由的名稱(chēng)(例如可以是不可路由的名稱(chēng))。如果第二名稱(chēng)不是可路由的名稱(chēng),那么路由器可以用PIT確定哪個(gè)網(wǎng)絡(luò)接口應(yīng)該被用來(lái)路由或轉(zhuǎn)發(fā)第二興趣消息。
如在圖4C中所示出的,PIT 400C包括條目405。PIT 400C可以由從PIT 400B中移除條目410得到。例如,參考回圖2,鏈接所有者可以向內(nèi)容所有者傳輸建議的鏈接對(duì)象。路由器可以接收建議的鏈接對(duì)象。路由器可以訪(fǎng)問(wèn)條目410以確定對(duì)建議的鏈接對(duì)象作出請(qǐng)求的興趣消息是從路由器的第六網(wǎng)絡(luò)接口處接收的,并且可以用路由器的第六網(wǎng)絡(luò)接口來(lái)路由或轉(zhuǎn)發(fā)建議的鏈接對(duì)象。在路由或轉(zhuǎn)發(fā)建議的鏈接對(duì)象之后,路由器可以移除條目410(如在圖4C中所示出的)。
如圖4D所示出的,PIT 400D不包括條目。PIT 400D可以由從PIT 400C中移除條目405得到。例如,參考回圖2,內(nèi)容所有者可以向鏈接所有者傳輸經(jīng)認(rèn)證的鏈接對(duì)象。路由器可以接收經(jīng)認(rèn)證的鏈接對(duì)象。路由器可以訪(fǎng)問(wèn)條目405來(lái)確定請(qǐng)求經(jīng)認(rèn)證的鏈接對(duì)象的興趣消息是從路由器的第三網(wǎng)絡(luò)接口處接收的,并且可以用路由器的第三網(wǎng)絡(luò)接口來(lái)路由或轉(zhuǎn)發(fā)建議的鏈接對(duì)象。在路由或轉(zhuǎn)發(fā)經(jīng)認(rèn)證的鏈接對(duì)象之后,路由器可以移除條目405(如在圖4D中所示出的)。
圖5是根據(jù)一些實(shí)施例的生成經(jīng)認(rèn)證的鏈接對(duì)象的方法500的流程圖。在一些實(shí)現(xiàn)方式中,方法500可以由鏈接認(rèn)證模塊和/或內(nèi)容所有者(例如在圖1中所示出的鏈接認(rèn)證模塊111和/或內(nèi)容所有者110)來(lái)執(zhí)行。簡(jiǎn)言之,方法500包括接收第一興趣消息、確定是否允許鏈接所有者鏈接到內(nèi)容、以及基于該確定來(lái)傳輸經(jīng)認(rèn)證的鏈接對(duì)象。方法500在框505處開(kāi)始,該處方法500從鏈接所有者接收第一興趣消息。第一興趣消息可以是對(duì)于經(jīng)認(rèn)證的鏈接對(duì)象的請(qǐng)求。第一興趣消息可以包括內(nèi)容所有者的鏈接認(rèn)證模塊的名稱(chēng)(如上文所討論的)。在一個(gè)實(shí)施例中,第一興趣消息還可包括鏈接所有者的建議的鏈接對(duì)象的名稱(chēng)(如上文所討論的)。例如,第一興趣名稱(chēng)可以包括反身名稱(chēng)或數(shù)據(jù)對(duì)象定位符(如上文所討論的)。在一個(gè)實(shí)施例中,建議的鏈接對(duì)象的名稱(chēng)可以是可路由的名稱(chēng)(如上文所討論的)。在另一個(gè)實(shí)施例中,建議的鏈接對(duì)象的名稱(chēng)可以是不可路由的名稱(chēng)(如上文所討論的)。
在塊505處,方法500包括可選地確定是否傳輸?shù)诙d趣消息。例如,方法500可以包括分析建議的鏈接對(duì)象的名稱(chēng)來(lái)確定鏈接所有者是否被識(shí)別和/或可信任(如上文所討論的)。如果確定第二興趣消息不應(yīng)該被傳輸,那么方法500在塊540處可以制止生成和/或傳輸經(jīng)認(rèn)證的鏈接對(duì)象。如果確定第二興趣消息應(yīng)該被傳輸,那么方法500進(jìn)行到塊515處,該處方法500向鏈接所有者傳輸?shù)诙d趣消息以請(qǐng)求建議的鏈接對(duì)象(如上文所討論的)。在塊520,方法500可以接收建議的鏈接對(duì)象。如以上所討論的,建議的鏈接對(duì)象可以包括用于建議的鏈接對(duì)象的名稱(chēng)、用于鏈接所有者希望鏈接到的內(nèi)容的名稱(chēng),以及由鏈接所有者生成的第一簽名。在塊525處,方法500可以分析建議的鏈接對(duì)象來(lái)確定是否應(yīng)該允許鏈接所有者鏈接到內(nèi)容。例如,方法500可以分析以下一個(gè)或多個(gè):建議的鏈接對(duì)象中包括的第一簽名、建議的鏈接對(duì)象的名稱(chēng)、以及內(nèi)容的名稱(chēng)(如上文所討論的)。
如果確定不應(yīng)該允許鏈接所有者鏈接到內(nèi)容,方法500在塊540處可以制止生成和/或傳輸經(jīng)認(rèn)證的鏈接對(duì)象。如果確定應(yīng)該允許鏈接所有者鏈接到內(nèi)容,那么方法500進(jìn)行到塊530處,該處方法500生成經(jīng)認(rèn)證的鏈接對(duì)象。如上文所討論的,經(jīng)認(rèn)證的鏈接對(duì)象可以包括用于經(jīng)認(rèn)證的鏈接對(duì)象的名稱(chēng)、用于內(nèi)容所有者正在允許鏈接所有者鏈接到的內(nèi)容的名稱(chēng)、由鏈接所有者生成的第一簽名、以及由內(nèi)容所有者生成的第二簽名。在塊535處,方法500向鏈接所有者傳輸經(jīng)認(rèn)證的鏈接對(duì)象。
圖6是根據(jù)一些實(shí)施例的請(qǐng)求經(jīng)認(rèn)證的鏈接對(duì)象的方法600的流程圖。在一些實(shí)現(xiàn)方式中,方法600可以由鏈接模塊和/或鏈接所有者(例如在圖1中示出的鏈接模塊121和/或鏈接所有者120)所執(zhí)行。簡(jiǎn)言之,方法600包括傳輸?shù)谝慌d趣消息、接收第二興趣消息、傳輸建議的鏈接對(duì)象、以及接收經(jīng)認(rèn)證的鏈接對(duì)象。方法600在塊605處開(kāi)始,該處方法600向請(qǐng)求經(jīng)認(rèn)證的鏈接對(duì)象的內(nèi)容所有者傳輸?shù)谝慌d趣消息。第一興趣消息可以是對(duì)于經(jīng)認(rèn)證的鏈接對(duì)象的請(qǐng)求。經(jīng)認(rèn)證的鏈接對(duì)象可以是到內(nèi)容所有者的內(nèi)容(例如由內(nèi)容所有者所擁有、管理、和/或運(yùn)營(yíng)的內(nèi)容)的鏈接。第一興趣消息可以包括內(nèi)容所有者的鏈接認(rèn)證模塊的名稱(chēng)(如上文所討論的)。在一個(gè)實(shí)施例中,第一興趣消息還可以包括鏈接所有者的建議的鏈接對(duì)象的名稱(chēng)(例如上文所討論的反身名稱(chēng)或數(shù)據(jù)對(duì)象定位符)。在一個(gè)實(shí)施例中,建議的鏈接對(duì)象的名稱(chēng)可以是可路由的名稱(chēng)(如上文所討論的)。在另一個(gè)實(shí)施例中,建議的鏈接對(duì)象的名稱(chēng)可以是不可路由的名稱(chēng)(如上文所討論的)。
在塊610處,方法600從內(nèi)容所有者接收第二興趣消息。第二興趣消息可以是對(duì)于建議的鏈接對(duì)象的請(qǐng)求。在一個(gè)實(shí)施例中,第二興趣消息可以包括建議的鏈接對(duì)象的名稱(chēng)(如上文所討論的)。在塊615處,方法600可以生成建議的鏈接對(duì)象。建議的鏈接對(duì)象可以包括用于建議的鏈接對(duì)象的名稱(chēng)、用于鏈接所有者希望鏈接到的內(nèi)容的名稱(chēng)、以及由鏈接所有者生成的簽名(如上文所討論的)。在塊620處,方法600向內(nèi)容所有者傳輸建議的鏈接對(duì)象。在塊625處,方法600從內(nèi)容所有者處接收經(jīng)認(rèn)證的鏈接對(duì)象(例如到內(nèi)容的鏈接)。例如,當(dāng)內(nèi)容所有者允許(例如認(rèn)證和/或許可)鏈接所有者鏈接到內(nèi)容所有者的內(nèi)容的時(shí)候,方法600可以接收經(jīng)認(rèn)證的鏈接對(duì)象。如上文所討論的,經(jīng)認(rèn)證的鏈接對(duì)象可以包括用于經(jīng)認(rèn)證的鏈接對(duì)象的名稱(chēng)、用于內(nèi)容所有者正在允許鏈接所有者鏈接到的內(nèi)容、由鏈接所有者所生成的第一簽名、以及由內(nèi)容所有者生成的第二簽名。經(jīng)認(rèn)證的鏈接對(duì)象還可以包括到期時(shí)間(例如表明一段時(shí)間,在該段時(shí)間內(nèi)經(jīng)認(rèn)證的鏈接對(duì)象可以保持有效)。在一個(gè)實(shí)施例中,方法600可以在它的不同的點(diǎn)處生成建議的鏈接對(duì)象(例如可以在方法600的不同的點(diǎn)處執(zhí)行塊615)。例如,方法600可以在塊605之前生成建議的鏈接對(duì)象,或在塊605與塊610之間可以生成建議的鏈接對(duì)象。
圖7是根據(jù)一些實(shí)施例的訪(fǎng)問(wèn)到內(nèi)容的鏈接的方法700的流程圖。在一些實(shí)現(xiàn)方式中,方法700可以由應(yīng)用和/或客戶(hù)端設(shè)備(例如在圖1中所示出的應(yīng)用131和/或客戶(hù)端設(shè)備130)所執(zhí)行。簡(jiǎn)言之,方法700包括請(qǐng)求鏈接對(duì)象、接收鏈接對(duì)象、以及確定是否訪(fǎng)問(wèn)由鏈接對(duì)象鏈接到的內(nèi)容。方法700從塊705處開(kāi)始,該處方法向鏈接所有者傳輸對(duì)于鏈接對(duì)象的興趣消息。鏈接對(duì)象可以是到內(nèi)容所有者的內(nèi)容(例如由內(nèi)容所有者所擁有、管理、和/或運(yùn)營(yíng)的內(nèi)容)的鏈接。在一個(gè)實(shí)施例中,方法700可以不傳輸對(duì)于鏈接對(duì)象的興趣消息。鏈接對(duì)象可以作為被應(yīng)用和/或客戶(hù)端設(shè)備所獲取的其他內(nèi)容的一部分而被接收。例如,經(jīng)認(rèn)證的鏈接對(duì)象可以被包括(或植入)在被應(yīng)用和/或客戶(hù)端設(shè)備所獲取的網(wǎng)頁(yè)中。在塊710處,方法700從鏈接所有者接收鏈接對(duì)象。鏈接對(duì)象可以是經(jīng)認(rèn)證的鏈接對(duì)象。如上文所討論的,經(jīng)認(rèn)證的鏈接對(duì)象可以包括用于經(jīng)認(rèn)證的鏈接對(duì)象的名稱(chēng)、用于內(nèi)容所有者正在允許鏈接所有者所鏈接到的內(nèi)容的名稱(chēng)、由鏈接所有者生成的第一簽名、由內(nèi)容所有者生成的第二簽名、和/或到期時(shí)間。方法700在塊715處確定鏈接對(duì)象是否有效。例如,方法700可以分析第一簽名和第二簽名以確定第一簽名和第二簽名是否有效。在另一個(gè)示例中,方法700可以分析內(nèi)容所有者的公共密鑰來(lái)確定公共密鑰是否已經(jīng)到期。在另一個(gè)實(shí)施例中,方法700可以分析鏈接對(duì)象的到期時(shí)間(例如在圖3B中所示出的到期時(shí)間355)以確定鏈接對(duì)象是否有效。如果鏈接對(duì)象是有效的(例如第一簽名與第二簽名都是有效的和/或尚未到期,到期時(shí)間尚未過(guò)去等等),那么方法700在塊725處訪(fǎng)問(wèn)由鏈接對(duì)象所引用的(例如鏈接到的)內(nèi)容。
如果鏈接對(duì)象是無(wú)效的(例如如果第一簽名和第二簽名中的一個(gè)或多個(gè)是無(wú)效的和/或已到期),那么方法700可以確定用戶(hù)是否已經(jīng)提供用戶(hù)輸入,該用戶(hù)輸入代表對(duì)于繼續(xù)訪(fǎng)問(wèn)內(nèi)容的用戶(hù)請(qǐng)求。例如,方法700可以確定用戶(hù)是否已經(jīng)提供用戶(hù)輸入,該用戶(hù)輸入代表:即使鏈接對(duì)象是無(wú)效的,用戶(hù)仍舊希望訪(fǎng)問(wèn)內(nèi)容。如果代表對(duì)于繼續(xù)訪(fǎng)問(wèn)內(nèi)容的用戶(hù)請(qǐng)求的用戶(hù)輸入被接收,那么方法700在塊725處訪(fǎng)問(wèn)內(nèi)容。如果代表對(duì)于繼續(xù)訪(fǎng)問(wèn)內(nèi)容的用戶(hù)請(qǐng)求的用戶(hù)輸入沒(méi)有被接收,那么方法700在塊730處制止訪(fǎng)問(wèn)內(nèi)容。
圖8是根據(jù)一些實(shí)施例的計(jì)算設(shè)備800的框圖。盡管示出了某些具體的特性,本領(lǐng)域技術(shù)人員將從本文理解,出于簡(jiǎn)化的目的,各種其他的特性并未被示出,以免模糊本文所公開(kāi)的實(shí)施例的更多相關(guān)的方面。為此,作為非限制的示例,在一些實(shí)施例中,計(jì)算設(shè)備800包括一個(gè)或多個(gè)處理單元(CPU)802(例如處理器)、一個(gè)或多個(gè)輸出接口803、存儲(chǔ)器806、編程接口808、以及用于將這些與各種其他組件互聯(lián)的一個(gè)或多個(gè)通信總線(xiàn)804。
在一些實(shí)施例中,通信總線(xiàn)804包括在系統(tǒng)組件之間互聯(lián)的以及控制系統(tǒng)組件之間的通信的電路。存儲(chǔ)器806包括高速隨機(jī)存取存儲(chǔ)器,諸如動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)、靜態(tài)隨機(jī)存儲(chǔ)器(SRAM)、雙倍數(shù)據(jù)傳輸率存儲(chǔ)器(DDR RAM)、或其他隨機(jī)存取固態(tài)的存儲(chǔ)器設(shè)備;并且可以包括非易失存儲(chǔ)器,諸如一個(gè)或多個(gè)磁盤(pán)存儲(chǔ)設(shè)備、光盤(pán)存儲(chǔ)設(shè)備、閃存設(shè)備、或其他非易失固態(tài)存儲(chǔ)設(shè)備。存儲(chǔ)器806可選地包括位于(一個(gè)或多個(gè))CPU 802遠(yuǎn)程的一個(gè)或多個(gè)存儲(chǔ)設(shè)備。存儲(chǔ)器806包括非暫態(tài)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。此外,在一些實(shí)施例中,存儲(chǔ)器806或存儲(chǔ)器806的非暫態(tài)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)儲(chǔ)存下文的程序、模塊以及數(shù)據(jù)結(jié)構(gòu)、或其子集,包括可選的操作系統(tǒng)830與鏈接認(rèn)證模塊840。在一些實(shí)施例中,邏輯存儲(chǔ)器與非暫態(tài)存儲(chǔ)器的組合中包括一個(gè)或多個(gè)指令。操作系統(tǒng)830包括用于運(yùn)作各種基礎(chǔ)系統(tǒng)服務(wù)以及用于執(zhí)行基于硬件的任務(wù)的過(guò)程。在一些實(shí)施例中,鏈接認(rèn)證模塊840可以被配置來(lái)接收對(duì)于經(jīng)認(rèn)證的鏈接對(duì)象的請(qǐng)求、請(qǐng)求建議的鏈接對(duì)象、以及基于建議的鏈接對(duì)象來(lái)確定是否傳輸經(jīng)認(rèn)證的鏈接對(duì)象到鏈接所有者。為此,鏈接認(rèn)證模塊840包括認(rèn)證模塊841以及鏈接對(duì)象模塊842。
在一些實(shí)施例中,認(rèn)證模塊841可以接收對(duì)于經(jīng)認(rèn)證的鏈接對(duì)象的請(qǐng)求。認(rèn)證模塊841還可以被配置來(lái)從鏈接所有者請(qǐng)求建議的鏈接對(duì)象、以及分析建議的鏈接對(duì)象。為此,認(rèn)證模塊841包括指令841a與啟發(fā)和元數(shù)據(jù)841b的集合。在一些實(shí)施例中,鏈接對(duì)象模塊842可以被配置來(lái)基于建議的鏈接對(duì)象來(lái)生成經(jīng)認(rèn)證的鏈接對(duì)象。為此,鏈接對(duì)象模塊842包括指令841a與啟發(fā)和元數(shù)據(jù)841b的集合。
盡管鏈接認(rèn)證模塊840、認(rèn)證模塊841、以及鏈接對(duì)象模塊842被示出為位于單一的計(jì)算設(shè)備800中,但應(yīng)當(dāng)理解在其他實(shí)施例中,鏈接認(rèn)證模塊840、認(rèn)證模塊841、以及鏈接對(duì)象模塊842可以各自位于單獨(dú)的計(jì)算設(shè)備中。
圖9是根據(jù)一些實(shí)施例的計(jì)算設(shè)備900的框圖。盡管示出了某些具體的特性,但本領(lǐng)域技術(shù)人員應(yīng)當(dāng)從本公開(kāi)中理解,出于簡(jiǎn)化的目的,各種其他特性沒(méi)有被示出,以免模糊本文所公開(kāi)的實(shí)施例的更多相關(guān)的方面。為此,作為非限制性示例,在一些實(shí)施例中,計(jì)算設(shè)備900包括一個(gè)或多個(gè)處理單元(CPU)902(例如處理器)、一個(gè)或多個(gè)輸出接口903、存儲(chǔ)器906、編程接口908、以及用于將它們與各種其他組件互聯(lián)的一個(gè)或多個(gè)通信總線(xiàn)904。
在一些實(shí)施例中,通信總線(xiàn)904包括將系統(tǒng)組件互聯(lián)及控制其間通信的電路。存儲(chǔ)器906包括高速隨機(jī)存取存儲(chǔ)器,諸如動(dòng)態(tài)隨機(jī)存取存儲(chǔ)器(DRAM)、靜態(tài)隨機(jī)存儲(chǔ)器(SRAM)、雙倍數(shù)據(jù)傳輸率存儲(chǔ)器(DDR RAM)、或其他隨機(jī)存取固態(tài)的存儲(chǔ)器設(shè)備;并且可以包括非易失存儲(chǔ)器,諸如以下一個(gè)或多個(gè):磁盤(pán)存儲(chǔ)設(shè)備、光盤(pán)存儲(chǔ)設(shè)備、閃存設(shè)備、或其他非易失固態(tài)存儲(chǔ)設(shè)備。存儲(chǔ)器906可選地包括位于(一個(gè)或多個(gè))CPU902遠(yuǎn)程的一個(gè)或多個(gè)存儲(chǔ)設(shè)備。存儲(chǔ)器906包括非暫態(tài)計(jì)算機(jī)可讀存儲(chǔ)設(shè)備介質(zhì)。此外,在一些實(shí)施例中,存儲(chǔ)器906或存儲(chǔ)器906的非暫態(tài)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)儲(chǔ)存下述程序、模塊、以及數(shù)據(jù)結(jié)構(gòu)、或其子集,包括可選的操作系統(tǒng)930與鏈接模塊940。在一個(gè)實(shí)施例中,邏輯存儲(chǔ)器與非暫態(tài)存儲(chǔ)器的組合中包括一個(gè)或多個(gè)指令。操作系統(tǒng)930包括用于運(yùn)作各種基礎(chǔ)系統(tǒng)服務(wù)以及用于執(zhí)行基于硬件的任務(wù)的過(guò)程。在一些實(shí)施例中,鏈接模塊940可以被配置來(lái)請(qǐng)求經(jīng)認(rèn)證的鏈接對(duì)象。為此,鏈接模塊940包括興趣模塊941以及鏈接對(duì)象模塊942。
在一些實(shí)施例中,興趣模塊941被配置來(lái)傳輸對(duì)于經(jīng)認(rèn)證的鏈接對(duì)象的請(qǐng)求、以及接收對(duì)于建議的鏈接對(duì)象的興趣消息。為此,興趣模塊941包括指令941a以及啟發(fā)和元數(shù)據(jù)941b的集合。在一些實(shí)施例中,鏈接對(duì)象模塊942被配置來(lái)生成建議的鏈接對(duì)象、并且傳輸建議的鏈接對(duì)象到內(nèi)容所有者。為此,鏈接對(duì)象模塊942包括指令942a與啟發(fā)和元數(shù)據(jù)942b的集合。
盡管鏈接模塊940、興趣模塊941、以及鏈接對(duì)象模塊942被示出為位于單一的計(jì)算設(shè)備900中,但應(yīng)當(dāng)理解在其他實(shí)施例中,鏈接模塊940、興趣模塊941、以及鏈接對(duì)象模塊942的任何組合可以位于分開(kāi)的計(jì)算設(shè)備上。例如,鏈接模塊940、興趣模塊941、以及鏈接對(duì)象模塊942各自可以存在于單獨(dú)的計(jì)算設(shè)備中。
圖10是根據(jù)一些實(shí)施例的計(jì)算設(shè)備1000的框圖。盡管某些具體的特性被示出,但本領(lǐng)域技術(shù)人員將從本公開(kāi)中理解,出于簡(jiǎn)化的目的,各種其他的特性未被示出,以免模糊本文所公開(kāi)的實(shí)施例的更多相關(guān)的方面。為此,作為非限制性的示例,在一些實(shí)施例中,計(jì)算設(shè)備1000包括一個(gè)或多個(gè)處理單元(CPU)1002(例如處理器)、一個(gè)或多個(gè)輸出接口1003、存儲(chǔ)器1006、編程接口1008、以及用于將它們與各種其他組件互聯(lián)的一個(gè)或多個(gè)通信總線(xiàn)1004。
在一些實(shí)施例中,通信總線(xiàn)1004包括將系統(tǒng)組件互聯(lián)及控制它們之間通信的電路。存儲(chǔ)器1006包括高速隨機(jī)存取存儲(chǔ)器,諸如DRAM、SRAM、DDR RAM或其他隨機(jī)存取固態(tài)狀態(tài)存儲(chǔ)器設(shè)備;并且可以包括非易失存儲(chǔ)器,諸如以下一個(gè)或多個(gè):磁盤(pán)存儲(chǔ)設(shè)備、光盤(pán)存儲(chǔ)設(shè)備、閃存設(shè)備、或其他非易失固態(tài)存儲(chǔ)設(shè)備。存儲(chǔ)器1006可選地包括位于(一個(gè)或多個(gè))CPU 1002遠(yuǎn)程的一個(gè)或多個(gè)存儲(chǔ)設(shè)備。存儲(chǔ)器1006包括非暫態(tài)計(jì)算機(jī)可讀存儲(chǔ)介質(zhì)。此外,在一些實(shí)施例中,存儲(chǔ)器1006或存儲(chǔ)器1006的非暫態(tài)計(jì)算機(jī)可讀存儲(chǔ)設(shè)備介質(zhì)儲(chǔ)存下文的程序、模塊以及數(shù)據(jù)結(jié)構(gòu)、或其子集,包括可選的操作系統(tǒng)1030以及應(yīng)用1040。在一些實(shí)施例中,在邏輯存儲(chǔ)器與非暫態(tài)存儲(chǔ)器的組合中包括一個(gè)或多個(gè)指令。操作系統(tǒng)1030包括用于運(yùn)作各種基礎(chǔ)系統(tǒng)服務(wù)以及用于執(zhí)行基于硬件的任務(wù)的過(guò)程。在一些實(shí)施例中,應(yīng)用1040可以被配置來(lái)請(qǐng)求鏈接對(duì)象并且確定是否訪(fǎng)問(wèn)由鏈接對(duì)象所引用的內(nèi)容。為此,應(yīng)用1040包括核實(shí)模塊1041與內(nèi)容模塊1042。
在一些實(shí)施例中,核實(shí)模塊1041被配置以請(qǐng)求鏈接對(duì)象并且確定鏈接對(duì)象是否有效。為此,核實(shí)模塊1041包括指令1041a以及啟發(fā)和元數(shù)據(jù)1041b的集合。在一些實(shí)施例中,如果鏈接對(duì)象有效,或者如果表明應(yīng)用1040應(yīng)該訪(fǎng)問(wèn)內(nèi)容的用戶(hù)輸入被接收,那么內(nèi)容模塊1042被配置以訪(fǎng)問(wèn)由鏈接對(duì)象所引用的內(nèi)容。為此,內(nèi)容模塊1042包括指令1042a以及啟發(fā)和元數(shù)據(jù)1042b的集合。
盡管應(yīng)用1040、核實(shí)模塊1041、以及內(nèi)容模塊1042被示出為位于單一計(jì)算設(shè)備1000中,應(yīng)當(dāng)理解在其他實(shí)施例中,應(yīng)用1040、核實(shí)模塊1041、以及內(nèi)容模塊1042的組合可以存在于分開(kāi)的計(jì)算設(shè)備中。例如應(yīng)用1040、核實(shí)模塊1041、以及內(nèi)容模塊1042可以各自存在于單獨(dú)的計(jì)算設(shè)備中。
此外,圖8、圖9以及圖10更多地意在作為可能出現(xiàn)在特定實(shí)施例中的各種特性的功能性描述,而不是本文所描述的實(shí)施例的結(jié)構(gòu)示意圖。如本領(lǐng)域技術(shù)人員所理解的,分別地被示出的項(xiàng)可以被組合并且一些項(xiàng)可以被分開(kāi)。例如,在圖8、圖9以及圖10中所示出的一些功能性的模塊可以在單個(gè)的模塊中實(shí)現(xiàn),并且單個(gè)功能性塊的各種功能可以在各種實(shí)施例中由一個(gè)或多個(gè)功能性塊實(shí)現(xiàn)。模塊的真實(shí)數(shù)量以及具體功能的劃分、以及它們之間如何分配特性,從一個(gè)實(shí)施例到另一個(gè)會(huì)是不同的,并且可以部分取決于具體的實(shí)施例所選擇的硬件、軟件、和/或固件的具體組合。
本公開(kāi)所描述了各種特性,這些特型中沒(méi)有單獨(dú)的一個(gè)負(fù)責(zé)本文所描述的優(yōu)點(diǎn)。應(yīng)當(dāng)理解本文所描述的各種特性可以被組合、修改、或省略,這對(duì)本領(lǐng)域技術(shù)人員是顯然的。除了本文所具體描述之外的其他組合與子組合應(yīng)當(dāng)對(duì)于本領(lǐng)域技術(shù)人員是顯然的,并且意在形成本公開(kāi)的一部分。本文結(jié)合各種流程圖步驟和/或階段描述了各種方法。應(yīng)當(dāng)理解在許多情境中,某些步驟和/或階段可以被組合在一起,使得在流程圖中示出的各種步驟和/或階段能夠作為單個(gè)的步驟和/或階段執(zhí)行。同樣地,某些步驟和/或階段可以被拆分為更多的成分而被分別地執(zhí)行。在一些示例中,步驟和/或階段的順序可以被重新安排,并且某些步驟和/或階段可以被完全省略。同樣地,本文所描述的方法應(yīng)當(dāng)被理解為開(kāi)放式的,使得對(duì)于本文所示與所述的步驟和/或階段而言,也能夠執(zhí)行附加的步驟和/或階段。
本文所描述的系統(tǒng)與方法的一些方面可以用例如計(jì)算機(jī)軟件、硬件、固件、或計(jì)算機(jī)軟件、硬件、固件的任何組合而有利地實(shí)現(xiàn)。計(jì)算機(jī)軟件可以包括儲(chǔ)存在計(jì)算機(jī)可讀介質(zhì)(例如非暫態(tài)計(jì)算機(jī)可讀介質(zhì))中計(jì)算機(jī)的可執(zhí)行的代碼,其當(dāng)被執(zhí)行時(shí),執(zhí)行本文所描述的功能。在一些實(shí)施例中,計(jì)算機(jī)可執(zhí)行的代碼由一個(gè)或多個(gè)通用的計(jì)算機(jī)處理器所執(zhí)行。本領(lǐng)域技術(shù)人員將理解,在本公開(kāi)的角度,可以用(在通用的計(jì)算機(jī)上所執(zhí)行的)軟件所實(shí)現(xiàn)的任何特性或功能,還可以用硬件、軟件、或固件的不同組合所實(shí)現(xiàn)。例如,這種模塊可以用集成電路的組合被完全實(shí)現(xiàn)在硬件中。替代地或此外,采用本文所描述的被設(shè)計(jì)以執(zhí)行具體功能的專(zhuān)用計(jì)算機(jī)而不是由通用的計(jì)算機(jī),可以完全地或部分地實(shí)現(xiàn)這種特性或功能。
可以用多個(gè)分布式的計(jì)算設(shè)備替代本文所描述的任何一個(gè)計(jì)算設(shè)備。在這種分布式實(shí)施例中,一個(gè)計(jì)算設(shè)備的功能被(例如通過(guò)網(wǎng)絡(luò))分布,使得在每一個(gè)分布式計(jì)算設(shè)備上能夠執(zhí)行一些功能。
一些實(shí)施例可以參考公式、算法、和/或流程圖而被描述。這些方法可以用能夠在一個(gè)或多個(gè)計(jì)算機(jī)上執(zhí)行的計(jì)算機(jī)程序指令而實(shí)現(xiàn)。這些方法還可以被實(shí)現(xiàn)為計(jì)算機(jī)程序產(chǎn)品,或者單獨(dú)實(shí)現(xiàn),或是作為裝置或系統(tǒng)的組件而被實(shí)現(xiàn)。就此而言,每個(gè)公式、算法、塊、或流程圖的步驟以及它們的組合可以由硬件、固件、和/或軟件而被實(shí)現(xiàn),該軟件包括存在于計(jì)算機(jī)可讀程序代碼邏輯中的一個(gè)或多個(gè)計(jì)算機(jī)程序指令。可以理解,任何這種計(jì)算機(jī)程序指令可以被裝載到一個(gè)或多個(gè)計(jì)算機(jī)(包括但不限于通用計(jì)算機(jī)或?qū)S糜?jì)算機(jī))或其他可編程處理裝置上以產(chǎn)生一種機(jī)器,使得在這(一個(gè)或多個(gè))計(jì)算機(jī)或(一個(gè)或多個(gè))其他可編程處理設(shè)備上所執(zhí)行的計(jì)算機(jī)程序指令實(shí)現(xiàn)由公式、算法、和/或流程圖所指定的功能。應(yīng)當(dāng)理解在流程圖中所示出的公式、算法、和/或塊、以及它們的組合,可以由專(zhuān)用的基于硬件的計(jì)算機(jī)系統(tǒng)所實(shí)現(xiàn),該基于硬件的計(jì)算機(jī)系統(tǒng)執(zhí)行所指定的功能或步驟,或由專(zhuān)用硬件與計(jì)算機(jī)可讀程序代碼邏輯手段的組合實(shí)現(xiàn)。
此外,(諸如在計(jì)算機(jī)可讀程序代碼邏輯中的)計(jì)算機(jī)程序指令可以被儲(chǔ)存在計(jì)算機(jī)可讀存儲(chǔ)器(例如非暫態(tài)計(jì)算機(jī)可讀介質(zhì))中,該計(jì)算機(jī)可讀存儲(chǔ)器可以指導(dǎo)一個(gè)或多個(gè)計(jì)算機(jī)或其他可編程處理設(shè)備以特定的方式工作,使得計(jì)算機(jī)可讀存儲(chǔ)器中儲(chǔ)存的指令實(shí)現(xiàn)在(一個(gè)或多個(gè))流程圖中的(一個(gè)或多個(gè))塊中指定的(一個(gè)或多個(gè))功能。計(jì)算機(jī)程序指令還可以被裝載到一個(gè)或多個(gè)計(jì)算機(jī)或其他可編程計(jì)算設(shè)備上,使得一系列可操作的步驟在這一個(gè)或多個(gè)計(jì)算機(jī)上或其他可編程計(jì)算設(shè)備上執(zhí)行以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,使在計(jì)算機(jī)上或其他可編程處理設(shè)備上所執(zhí)行的指令提供用于實(shí)現(xiàn)由流程圖的(一個(gè)或多個(gè))公式、(一個(gè)或多個(gè))算法、和/或(一個(gè)或多個(gè))塊所指定的功能的步驟。
本文所描述的一些或全部的方法和任務(wù)可以由計(jì)算機(jī)系統(tǒng)所執(zhí)行以及全自動(dòng)化。在一些情境中,計(jì)算機(jī)系統(tǒng)可以包括多個(gè)不同的計(jì)算機(jī)或計(jì)算設(shè)備(例如物理服務(wù)器、工作站、存儲(chǔ)設(shè)備陣列等等),其通過(guò)網(wǎng)絡(luò)通信以及交互操作來(lái)執(zhí)行所描述的功能。每個(gè)這種計(jì)算設(shè)備通常包括處理器(或多個(gè)處理器),其執(zhí)行在存儲(chǔ)器、其他非暫態(tài)的計(jì)算機(jī)可讀存儲(chǔ)設(shè)備介質(zhì)或設(shè)備中儲(chǔ)存的程序指令或模塊。本文所公開(kāi)的各種功能可以由這種程序指令實(shí)現(xiàn),盡管一些或全部所公開(kāi)的功能可以在專(zhuān)用電路(諸如專(zhuān)用集成電路(ASIC)或現(xiàn)場(chǎng)可編程門(mén)陣列(FPGA))中替代地實(shí)現(xiàn)。在計(jì)算機(jī)系統(tǒng)包括多個(gè)計(jì)算設(shè)備的情況下,這些設(shè)備可以但不必要在相同的位置。所公開(kāi)的方法與任務(wù)的結(jié)果可以通過(guò)把物理存儲(chǔ)設(shè)備(諸如固態(tài)存儲(chǔ)器芯片和/或磁盤(pán))轉(zhuǎn)換到另一狀態(tài)而被持久地儲(chǔ)存。
除非上下文另有明確要求,貫穿說(shuō)明書(shū)和權(quán)利要求書(shū),詞語(yǔ)“包括”等等應(yīng)解釋為包容的意義,而不是排除的或窮舉的意義;即“包括但不局限于”的意義。本文中常用的詞語(yǔ)“耦接”指的是兩個(gè)或更多個(gè)元件可以被直接地連接或通過(guò)一個(gè)或多個(gè)中間元件所連接。此外,詞語(yǔ)“本文”“上文”“下文”以及相似含義的詞語(yǔ)當(dāng)在本申請(qǐng)中使用時(shí)應(yīng)當(dāng)指的是本申請(qǐng)作為一個(gè)整體而不是本申請(qǐng)的任何特定的部分。在上下文允許的情況下,在以上詳細(xì)說(shuō)明中使用單數(shù)或復(fù)數(shù)數(shù)量的詞語(yǔ)還可以包括相應(yīng)的復(fù)數(shù)或單數(shù)數(shù)量。對(duì)于一系列兩個(gè)或更多個(gè)項(xiàng)所用的詞語(yǔ)“或”,該詞語(yǔ)涵蓋對(duì)該詞語(yǔ)的下列所有解釋?zhuān)涸撓盗兄械娜我豁?xiàng)、該系列中的所有項(xiàng)、以及該系列中的項(xiàng)的任何組合。詞語(yǔ)“示例的”在本文僅僅意指“作為示例、實(shí)例或舉例”。本文描述為“示例的”任何實(shí)現(xiàn)方式不一定被認(rèn)為比其他的實(shí)現(xiàn)方式更優(yōu)選或更有利。
應(yīng)當(dāng)理解,盡管本文可能使用了術(shù)語(yǔ)“第一”“第二”等等來(lái)描述各種元件,這些元件不應(yīng)該被這些術(shù)語(yǔ)所局限。這些術(shù)語(yǔ)僅僅被用來(lái)將一個(gè)元件與其他的元件區(qū)分開(kāi)。例如,第一接點(diǎn)可以被叫做第二接點(diǎn),并且相似地,第二接點(diǎn)可以被叫做第一接點(diǎn),不改變說(shuō)明書(shū)的意思,只要出現(xiàn)的所有“第一接點(diǎn)”被一致地重命名并且出現(xiàn)的所有第二接點(diǎn)也被一致地重命名。第一接點(diǎn)和第二接點(diǎn)都是接點(diǎn),但是它們不是同一個(gè)接點(diǎn)。同樣地如在對(duì)實(shí)施例的說(shuō)明以及所附權(quán)利要求書(shū)中所使用的,單數(shù)形式“一”、“該”意在也包括復(fù)數(shù)形式,除非上下文以其他方式明確表明。應(yīng)當(dāng)理解,本文所使用的術(shù)語(yǔ)“和/或”表示并且包含所列出的有關(guān)項(xiàng)中一個(gè)或多個(gè)的任何且所有可能的組合。
此外,取決于上下文,本文所使用的術(shù)語(yǔ)“如果”可以被解釋為“當(dāng)...的時(shí)候”或“一旦...”或“響應(yīng)于確定”或“根據(jù)確定”或“響應(yīng)于檢測(cè)”所陳述的先決條件為真。相似地,取決于上下文,句子“如果確定[所陳述的先決條件為真]”、或“如果[所陳述的先決條件為真]”、或“當(dāng)[所陳述的先決條件為真]的時(shí)候”可以被解釋意為“一旦確定”或“響應(yīng)于確定”或“根據(jù)確定”或“一旦檢測(cè)到”或“響應(yīng)于檢測(cè)到”所陳述的先決條件是真。
本公開(kāi)不意在限于本文所示出的實(shí)施方式。對(duì)本公開(kāi)中所描述的實(shí)現(xiàn)方式的各種修改對(duì)于本領(lǐng)域技術(shù)人員可能是顯然的,并且本文所定義的一般原則可以用于其他實(shí)現(xiàn)方式而不脫離本公開(kāi)的精神或范圍。本文所提供發(fā)明的教導(dǎo)可以適用于其他方法和系統(tǒng),并且不局限于以上所描述的方法和系統(tǒng),并且以上所描述的各種實(shí)施例的元件與動(dòng)作可以被組合來(lái)提供更多的實(shí)施例。相應(yīng)地,本文所描述的新穎的方法與系統(tǒng)可以以多種其他形式實(shí)施;此外,在本文所描述的方法或系統(tǒng)的形式中可以做出各種省略、置換以及改變而不脫離本公開(kāi)的精神。所附的權(quán)利要求書(shū)以及它們的等同含義意在覆蓋落在本公開(kāi)的范圍與精神中的這些形式或修改。