用于內(nèi)容中心網(wǎng)絡中的簡單的服務發(fā)現(xiàn)的系統(tǒng)和方法
【技術領域】
[0001]本發(fā)明大體上涉及內(nèi)容中心網(wǎng)絡(CCN)。更確切地說,本發(fā)明涉及一種用于內(nèi)容中心網(wǎng)絡(CCN)中的服務注冊和發(fā)現(xiàn)的系統(tǒng)和方法。
【背景技術】
[0002]因特網(wǎng)和電子商務的激增持續(xù)激發(fā)網(wǎng)絡行業(yè)中的革命性改變。當今,從在線電影觀看到每日新聞遞送、零售銷售和即時消息接發(fā),大量的信息交換是在線進行的。越來越多的因特網(wǎng)應用程序也在變成移動的。然而,當前因特網(wǎng)依靠主要基于位置的尋址方案而操作。兩種最普遍存在的協(xié)議:因特網(wǎng)協(xié)議(IP)和以太網(wǎng)協(xié)議,都是以基于末端主機的地址為基礎。也就是說,內(nèi)容的消費者僅可通過從通常與物理對象或位置相關聯(lián)的地址(例如,IP地址或以太網(wǎng)媒體接入控制(MAC)地址)顯式地請求內(nèi)容而接收所述內(nèi)容。此限制性尋址方案正變得逐漸更不足以滿足不斷改變的網(wǎng)絡需求。
[0003]近年來,本行業(yè)中提出了信息中心網(wǎng)絡(ICN)架構,其中直接命名和尋址內(nèi)容。內(nèi)容中心聯(lián)網(wǎng)(CCN),這個示范性ICN架構引入了一種新的內(nèi)容傳輸方法。并非在應用程序級將網(wǎng)絡業(yè)務視為供內(nèi)容通行的端到端對話,而是基于內(nèi)容的唯一名稱來請求或返回內(nèi)容,且網(wǎng)絡負責將內(nèi)容從提供者路由到消費者。應注意,內(nèi)容包含可在通信系統(tǒng)中傳輸?shù)臄?shù)據(jù),包含例如文本、圖像、視頻和/或音頻等任何形式的數(shù)據(jù)。消費者和提供者可為在計算機旁的人或在CCN內(nèi)部或外部的自動進程。一條內(nèi)容可指代整個內(nèi)容或內(nèi)容的相應部分。舉例來說,報紙文章可能由體現(xiàn)為數(shù)據(jù)包的多條內(nèi)容表示。一條內(nèi)容也可與元數(shù)據(jù)相關聯(lián),所述元數(shù)據(jù)以例如驗證數(shù)據(jù)、創(chuàng)建日期、內(nèi)容所有者等信息來描述或增強所述條內(nèi)容。
[0004]在CCN中,名稱有重要的作用。更確切地說,內(nèi)容對象和興趣是通過其名稱識別,所述名稱通常是階層式結構化可變長度識別符(HSVLI)。興趣和內(nèi)容對象基于其名稱流過網(wǎng)絡。當計算裝置首次加入一個CCN網(wǎng)絡時,計算裝置需要知道要向哪里轉(zhuǎn)發(fā)興趣消息,并且計算裝置還需要知道要在需要發(fā)送的興趣消息中包含什么名稱或名稱前綴以便在新環(huán)境中獲得基本服務。此外,所述裝置自身還需要向CCN網(wǎng)絡注冊。
【發(fā)明內(nèi)容】
[0005]本發(fā)明的一個實施例提供一種用于內(nèi)容中心網(wǎng)絡(CCN)中的服務發(fā)現(xiàn)的系統(tǒng)。在操作期間,所述系統(tǒng)從服務提供者接收與服務相關聯(lián)的注冊興趣,并且響應于所述注冊興趣而產(chǎn)生確認內(nèi)容對象。所述確認內(nèi)容對象包含所述服務的至少一個名稱和一個準入令牌。所述系統(tǒng)接著將所述確認內(nèi)容對象返回到所述服務提供者,由此使得所述服務提供者能夠向所述CCN提供所述服務。
[0006]在此實施例的變型中,所述注冊興趣進一步包含與所述服務提供者相關聯(lián)的公共密鑰,并且所述準入令牌使用所述公共密鑰加密。
[0007]在此實施例的變型中,注冊興趣進一步包含對服務的描述和與所述服務相關聯(lián)的操作元數(shù)據(jù)。
[0008]在此實施例的變型中,接收注冊興趣包括監(jiān)聽一或多個服務發(fā)現(xiàn)名稱空間上的興趣。所述一或多個服務發(fā)現(xiàn)名稱空間是階層式結構化的。
[0009]在另一變型中,所述系統(tǒng)進一步從服務客戶端接收服務發(fā)現(xiàn)名稱空間中的服務發(fā)現(xiàn)興趣,并且產(chǎn)生服務響應內(nèi)容對象。所述服務響應內(nèi)容對象包含所述服務發(fā)現(xiàn)名稱空間的一或多個下一級子代名稱空間的名稱。所述系統(tǒng)接著將所述服務響應內(nèi)容對象返回到所述服務客戶端,由此使得所述服務客戶端能夠?qū)⒎照埱蟀l(fā)送到所述一或多個下一級子代名稱空間。
[0010]在此實施例的變型中,所述系統(tǒng)進一步從所述服務提供者接收對所述服務的注銷興趣。所述注銷興趣包含所述準入令牌。
[0011 ] 在此實施例的變型中,所述系統(tǒng)進一步通過使用所述服務名稱添加所述服務而更新服務數(shù)據(jù)庫。
【附圖說明】
[0012]圖1圖解說明根據(jù)本發(fā)明的實施例的網(wǎng)絡的示范性架構。
[0013]圖2呈現(xiàn)一個呈現(xiàn)根據(jù)本發(fā)明的實施例的CCN動態(tài)名稱空間配置協(xié)議(DNCP)客戶端的示范性架構的圖。
[0014]圖3呈現(xiàn)一個呈現(xiàn)根據(jù)本發(fā)明的實施例的CCN-DNCP服務器的示范性架構的圖。
[0015]圖4呈現(xiàn)一個圖解說明根據(jù)本發(fā)明的實施例的用于動態(tài)名稱空間配置的示范性服務器進程的流程圖。
[0016]圖5呈現(xiàn)一個圖解說明根據(jù)本發(fā)明的實施例的用于動態(tài)名稱空間配置的示范性客戶端進程的流程圖。
[0017]圖6提供一個圖解說明根據(jù)本發(fā)明的實施例的用于發(fā)現(xiàn)網(wǎng)絡服務的示范性內(nèi)容中心網(wǎng)絡的圖。
[0018]圖7呈現(xiàn)一個圖解說明根據(jù)本發(fā)明的實施例的服務發(fā)現(xiàn)中介的示范性架構的圖。
[0019]圖8呈現(xiàn)一個圖解說明根據(jù)本發(fā)明的實施例的示范性服務注冊進程的流程圖。
[0020]圖9呈現(xiàn)一個圖解說明根據(jù)本發(fā)明的實施例的示范性服務發(fā)現(xiàn)進程的流程圖。
[0021]圖10圖解說明根據(jù)一實施例的用于服務發(fā)現(xiàn)的示范性系統(tǒng)。
[0022]在圖式中,相同參考數(shù)字指代相同圖式元件。
【具體實施方式】
[0023]
[0024]本發(fā)明的實施例提供一種用于CCN中的服務注冊和發(fā)現(xiàn)的系統(tǒng)和方法。所述解決方案準許網(wǎng)絡服務提供者向服務發(fā)現(xiàn)中介注冊其服務,服務發(fā)現(xiàn)中介管理服務發(fā)現(xiàn)名稱空間,并且保持所有活動服務的列表。試圖發(fā)現(xiàn)服務的客戶端裝置可以向服務發(fā)現(xiàn)中介發(fā)送服務發(fā)現(xiàn)興趣,服務發(fā)現(xiàn)中介用服務名稱和客戶端裝置與服務提供者交互所需的任何元數(shù)據(jù)對此興趣作出響應。
[0025]一般來說,CCN使用兩種類型的消息:興趣和內(nèi)容對象。興趣攜載內(nèi)容對象的階層式結構化可變長度識別符(HSVLI),也稱為“名稱”,且充當針對所述對象的請求。如果網(wǎng)絡元件(例如,路由器)接收到對同一名稱的多個興趣,那么其可聚合那些興趣。沿著具有匹配內(nèi)容對象的興趣的路徑的網(wǎng)絡元件可高速緩沖存儲且返回所述對象,從而滿足所述興趣。內(nèi)容對象遵循興趣的反向路徑到所述興趣的起源。除了其它信息之外,內(nèi)容對象含有同一 HSVL1、對象的有效負載和用以將HSVLI綁定到有效負載的密碼信息。
[0026]本發(fā)明中使用的術語大體上如下定義(但其解釋不限于此):
[0027]“HSVLI”:階層式結構化可變長度識別符,也稱為名稱。它是名稱組成部分的有序列表,可以是可變長度八位位組串。如果使用人可讀形式,它可以用例如ccnx:/path/part的格式表示。HSVLO也可以是人不可讀的。如上所述,HSVLI涉及內(nèi)容,且HSVLI能夠表示用于內(nèi)容的有組織結構且至少部分對人有意義是合意的。HSVLI的單個組成部分可具有任意長度。此外,HSVLI可具有顯式地定界的組成部分,可包含任何字節(jié)序列,且不限于人可讀字符。在轉(zhuǎn)發(fā)帶有HSVLI的包時,最長前綴匹配查找是重要的。舉例來說,指示“/pare/home/bob” 中的興趣的 HSVLI 將匹配 “/parc/home/bob/test.txt” 和 “/parc/home/bob/bar.txt”兩者。在名稱組成部分的數(shù)目方面,最長匹配被視為最佳的,因為最長匹配是最具體的。關于HSVLI的詳細描述可以參照由發(fā)明人Van L.Jacobson和James D.Thornton于2009年9月23日提交的“用于轉(zhuǎn)發(fā)帶有階層式結構化可變長度識別符的包的系統(tǒng)(SYSTEMFOR FORWARIDNG A PACKET WITH A HIERARCHICHALLY STRUCTURED VARIABLE-LENGTHIDENTIFIER) ” 的美國專利第 8,160,069 號。
[0028]“興趣”:對內(nèi)容對象的請求。興趣指定HSVLI名稱前綴和其它任選的選擇符,所述選擇符可用以在具有相同名稱前綴的多個對象當中進行挑選。任何名稱與興趣名稱前綴(以及任選地其它所請求的參數(shù),例如發(fā)行者密鑰-1D匹配)匹配的內(nèi)容對象都滿足所述興趣。
[0029]“內(nèi)容對象”:響應于興趣而發(fā)送的數(shù)據(jù)對象。其具有經(jīng)由密碼簽名而綁定在一起的HSVLI名稱和內(nèi)容有效負載。任選地,所有內(nèi)容對象具有由內(nèi)容對象的SHA-256摘要組成的隱式終端名稱組成部分。在一個實施例中,隱式摘要不在線上傳送,但在需要時在每一躍點處計算。
[0030]“面”:在CCN中,面這個術語是接口概念的一般化形式。面可以是與網(wǎng)絡的連接,或直接與應用程序方的連接。面可經(jīng)配置以在特定網(wǎng)絡接口上發(fā)送和接收廣播或多播包,或者使用基礎傳輸中的點到點尋址或使用隧道(舉例來說,TCP隧道)來發(fā)送和接收包。面還可以是經(jīng)由封裝類UDP或OS特定的進程間通信路徑與在相同機器上運行的單個應用程序進程的連接。所有消息通過面到達,并且通過面發(fā)送出去。
[0031]如之前所提到,HSVLI指示一條內(nèi)容,經(jīng)階層式結構化,且包含從最一般層級到最特定層級排序的連續(xù)組成部分。相應HSVLI的長度不是固定的。在內(nèi)容中心網(wǎng)絡中,不同于常規(guī)IP網(wǎng)絡,可以通過HSVLI識別包。舉例來說,“abcd/bob/papers/ccn/news”可為內(nèi)容的名稱且識別對應包,即,在名為“AB⑶”的組織處針對名為“Bob”的用戶的來自“ccn”論文合集的“news”文章。為了請求一條內(nèi)容,節(jié)點通過所述內(nèi)容的名稱來表達(例如,廣播)對所述內(nèi)容的興趣。對一條內(nèi)容的興趣可為根據(jù)所述內(nèi)容的名稱或識別符對所