用于在內(nèi)容中心網(wǎng)絡(luò)上交換雙向流的方法和設(shè)備的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明大體上涉及數(shù)據(jù)傳送協(xié)議。更確切地說,本發(fā)明涉及通過在內(nèi)容中心網(wǎng)絡(luò)上建立的雙向流傳送數(shù)據(jù)。
【背景技術(shù)】
[0002]在典型的內(nèi)容中心網(wǎng)絡(luò)(CCN)中,裝置通過使一個(gè)裝置散布名稱為數(shù)據(jù)片的興趣來交換數(shù)據(jù)。CCN的路由器將此興趣轉(zhuǎn)發(fā)到返回與興趣的名稱相關(guān)聯(lián)的內(nèi)容對(duì)象的內(nèi)容產(chǎn)生器。興趣的名稱可以包含名稱組成部分的集合,所述集合唯一地識(shí)別數(shù)據(jù)片并且包含數(shù)據(jù)的額外屬性(例如,版本號(hào)、數(shù)據(jù)的雜湊值等)。因此,在許多情況下,興趣的名稱需要不受歡迎地長以唯一地識(shí)別數(shù)據(jù)片。更糟糕的是,如果興趣的名稱大于可以存儲(chǔ)在CCN路由器的待定興趣表(PIT)中的名稱,則有可能一些CCN路由器可能不轉(zhuǎn)發(fā)所述興趣,或者它們可能不能夠?qū)⒄?qǐng)求的數(shù)據(jù)返回到散布興趣的客戶端裝置。
[0003]在CCN上的另一常見通信方法包含Start-Write方法,其發(fā)生在CCN儲(chǔ)存庫中以及旁白CCN(VoCCN)協(xié)議中。所述Start-Write方法為客戶端裝置提供一種用以將數(shù)據(jù)發(fā)送到目標(biāo)儲(chǔ)存庫的方式。例如,使用Start-Write方法,客戶端裝置可以將其名稱包含可路由前綴的興趣散布到目標(biāo)儲(chǔ)存庫,接著散布通過客戶端裝置托管的數(shù)據(jù)片的經(jīng)編碼名稱。在接收興趣之后,目標(biāo)儲(chǔ)存庫散布包含數(shù)據(jù)片的名稱的另一興趣??蛻舳搜b置通過包含數(shù)據(jù)片的內(nèi)容對(duì)象對(duì)此興趣作出響應(yīng)。令人遺憾的是,此通信方法可能產(chǎn)生具有冗長名稱的興趣消息。更糟糕的是,盡管此通信允許兩個(gè)裝置之間的通信,但是考慮到正在交換的數(shù)據(jù)的名稱通過興趣和內(nèi)容對(duì)象名稱曝露,此通信方法并不提供安全的通信。
【發(fā)明內(nèi)容】
[0004]—個(gè)實(shí)施例提供一種數(shù)據(jù)串流系統(tǒng),所述數(shù)據(jù)串流系統(tǒng)有助于在內(nèi)容中心網(wǎng)絡(luò)(CCN)上建立雙向數(shù)據(jù)流。在操作期間,網(wǎng)絡(luò)裝置確定與服務(wù)提供商相關(guān)聯(lián)的第一可路由名稱前綴,網(wǎng)絡(luò)裝置希望與所述服務(wù)提供商建立雙向串流會(huì)話。網(wǎng)絡(luò)裝置還產(chǎn)生用以提供給服務(wù)提供商的客戶端流名稱??蛻舳肆髅Q包含本地網(wǎng)絡(luò)裝置的第二可路由前綴,并且包含來自服務(wù)提供商的第一數(shù)據(jù)流的客戶端流標(biāo)識(shí)符。網(wǎng)絡(luò)裝置隨后散布包含第一可路由名稱前綴并且包含隨附于第一可路由名稱前綴的客戶端流名稱的興趣消息。與服務(wù)提供商相關(guān)聯(lián)的遠(yuǎn)程網(wǎng)絡(luò)裝置可以通過返回包含遠(yuǎn)程裝置的響應(yīng)的內(nèi)容對(duì)象來對(duì)興趣作出響應(yīng)。
[0005]此內(nèi)容對(duì)象的內(nèi)容可以包含與服務(wù)提供商相關(guān)聯(lián)的遠(yuǎn)程網(wǎng)絡(luò)裝置的提供商流名稱。提供商流名稱包含遠(yuǎn)程網(wǎng)絡(luò)裝置的第二可路由前綴并且包含從本地網(wǎng)絡(luò)裝置到服務(wù)提供商的第二數(shù)據(jù)流的提供商流標(biāo)識(shí)符。在接收到滿足興趣消息的內(nèi)容對(duì)象之后,本地網(wǎng)絡(luò)裝置可以基于客戶端流名稱和提供商流名稱使用雙向流在CCN上與服務(wù)提供商通信。
[0006]在一些實(shí)施例中,興趣消息可以包含本地網(wǎng)絡(luò)裝置的認(rèn)證信息。此外,內(nèi)容對(duì)象可以包含遠(yuǎn)程網(wǎng)絡(luò)裝置的認(rèn)證信息。
[0007]在一些實(shí)施例中,網(wǎng)絡(luò)裝置可以在會(huì)話設(shè)置過程期間獲得遠(yuǎn)程網(wǎng)絡(luò)裝置的公開密鑰,并且使用遠(yuǎn)程網(wǎng)絡(luò)裝置的公開密鑰對(duì)會(huì)話密鑰進(jìn)行加密。網(wǎng)絡(luò)裝置還可以使用會(huì)話密鑰對(duì)客戶端流名稱進(jìn)行加密,并且產(chǎn)生興趣消息以包含隨附于第一可路由名稱前綴的經(jīng)排列數(shù)據(jù)塊。此經(jīng)排列數(shù)據(jù)塊可以包含經(jīng)加密會(huì)話密鑰、經(jīng)加密客戶端流名稱以及本地網(wǎng)絡(luò)裝置的認(rèn)證信息。
[0008]在一些實(shí)施例中,內(nèi)容對(duì)象的內(nèi)容包含經(jīng)加密會(huì)話密鑰,所述經(jīng)加密會(huì)話密鑰使用本地網(wǎng)絡(luò)裝置的公開密鑰進(jìn)行加密。此外,網(wǎng)絡(luò)裝置可以使用本地網(wǎng)絡(luò)裝置的私用密鑰對(duì)會(huì)話密鑰進(jìn)行解密,并且存儲(chǔ)與雙向流相關(guān)聯(lián)的會(huì)話密鑰。
[0009]在一些實(shí)施例中,盡管與遠(yuǎn)程服務(wù)提供商通信,但是網(wǎng)絡(luò)裝置可以散布包含與遠(yuǎn)程網(wǎng)絡(luò)裝置相關(guān)聯(lián)的提供商流名稱的一個(gè)或多個(gè)興趣消息。例如,相應(yīng)興趣消息可以包含隨附于提供商流名稱的可用段號(hào),使得可用段號(hào)可用于遠(yuǎn)程網(wǎng)絡(luò)裝置,以將數(shù)據(jù)段發(fā)送到本地網(wǎng)絡(luò)裝置。此外,響應(yīng)于接收與提供商流名稱相關(guān)聯(lián)的內(nèi)容對(duì)象,網(wǎng)絡(luò)裝置可以基于來自內(nèi)容對(duì)象的名稱的段號(hào)處理內(nèi)容對(duì)象的內(nèi)容。
[0010]在一些實(shí)施例中,內(nèi)容對(duì)象的內(nèi)容使用雙向流的會(huì)話密鑰進(jìn)行加密。此外,盡管處理內(nèi)容對(duì)象的內(nèi)容,但是網(wǎng)絡(luò)裝置可以使用會(huì)話密鑰對(duì)內(nèi)容對(duì)象的內(nèi)容進(jìn)行解壓。
[0011]在一些實(shí)施例中,盡管與服務(wù)提供商通信,但是網(wǎng)絡(luò)裝置可以接收與客戶端流名稱相關(guān)聯(lián)的一個(gè)或多個(gè)興趣消息。例如,相應(yīng)興趣消息可以包含可用于本地網(wǎng)絡(luò)裝置以將數(shù)據(jù)段發(fā)送到遠(yuǎn)程網(wǎng)絡(luò)裝置的段號(hào)。此外,響應(yīng)于獲得用以發(fā)送到遠(yuǎn)程網(wǎng)絡(luò)裝置的數(shù)據(jù),網(wǎng)絡(luò)裝置可以產(chǎn)生具有來自與可用段號(hào)相關(guān)聯(lián)的興趣的名稱的內(nèi)容對(duì)象。內(nèi)容對(duì)象的內(nèi)容可以包含遠(yuǎn)程網(wǎng)絡(luò)裝置的數(shù)據(jù)。
[0012]在這些實(shí)施例的一些變化形式中,盡管產(chǎn)生內(nèi)容對(duì)象,但是網(wǎng)絡(luò)裝置可以獲得雙向流的會(huì)話密鑰,并且對(duì)遠(yuǎn)程網(wǎng)絡(luò)裝置的數(shù)據(jù)進(jìn)行加密以產(chǎn)生經(jīng)加密有效負(fù)載。網(wǎng)絡(luò)裝置隨后可以產(chǎn)生內(nèi)容對(duì)象以包含內(nèi)容對(duì)象的內(nèi)容中的經(jīng)加密有效負(fù)載。
[0013]在一些實(shí)施例中,網(wǎng)絡(luò)裝置可以從遠(yuǎn)程裝置中接收內(nèi)容對(duì)象,所述內(nèi)容對(duì)象包含將內(nèi)容對(duì)象識(shí)別為用于來自服務(wù)提供商的第一數(shù)據(jù)流的最終塊的最終塊標(biāo)識(shí)符。此外,響應(yīng)于檢測內(nèi)容對(duì)象中的最終塊標(biāo)識(shí)符,網(wǎng)絡(luò)裝置可以關(guān)閉來自遠(yuǎn)程裝置的第一數(shù)據(jù)流。
[0014]在一些實(shí)施例中,響應(yīng)于確定本地網(wǎng)絡(luò)裝置不具有用以發(fā)送到遠(yuǎn)程網(wǎng)絡(luò)裝置的更多數(shù)據(jù),本地網(wǎng)絡(luò)裝置可以發(fā)送其內(nèi)容包含最終塊標(biāo)識(shí)符的內(nèi)容對(duì)象,所述最終塊標(biāo)識(shí)符將內(nèi)容對(duì)象識(shí)別為到服務(wù)提供商的第二數(shù)據(jù)流的最終塊。內(nèi)容對(duì)象的名稱可以包含來自與可用段號(hào)相關(guān)聯(lián)的興趣的名稱。
【附圖說明】
[0015]圖1說明根據(jù)實(shí)施例的有助于在內(nèi)容中心網(wǎng)絡(luò)上建立和維持雙向流的示例性計(jì)算環(huán)境。
[0016]圖2說明根據(jù)實(shí)施例的在起始與服務(wù)提供商的雙向流的客戶端裝置之間的示例性通信。
[0017]圖3呈現(xiàn)根據(jù)實(shí)施例的說明用于起始與服務(wù)提供商的雙向流的方法的流程圖。
[0018]圖4呈現(xiàn)根據(jù)實(shí)施例的說明用于維持來自遠(yuǎn)程網(wǎng)絡(luò)裝置的數(shù)據(jù)流的方法的流程圖。
[0019]圖5呈現(xiàn)根據(jù)實(shí)施例的說明用于維持到遠(yuǎn)程網(wǎng)絡(luò)裝置的數(shù)據(jù)流的方法的流程圖。
[0020]圖6呈現(xiàn)根據(jù)實(shí)施例的說明用于認(rèn)證請(qǐng)求起始雙向流的遠(yuǎn)程網(wǎng)絡(luò)裝置的方法的流程圖。
[0021]圖7A說明根據(jù)實(shí)施例的到拒絕建立雙向流的請(qǐng)求的目標(biāo)網(wǎng)絡(luò)裝置的示例性通
?目O
[0022]圖7Β說明根據(jù)實(shí)施例的到接受建立雙向流的請(qǐng)求的目標(biāo)網(wǎng)絡(luò)裝置的示例性通
?目O
[0023]圖8呈現(xiàn)根據(jù)實(shí)施例的說明用于重定向流起始興趣的方法的流程圖。
[0024]圖9說明根據(jù)實(shí)施例的到重定向流起始興趣的負(fù)載均衡器的示例性通信。
[0025]圖10說明根據(jù)實(shí)施例的有助于在內(nèi)容中心網(wǎng)絡(luò)上建立和維持雙向流的示例性設(shè)備。
[0026]圖11說明根據(jù)實(shí)施例的有助于在內(nèi)容中心網(wǎng)絡(luò)上建立和維持雙向流的示例性計(jì)算機(jī)系統(tǒng)。
[0027]在圖式中,相同參考數(shù)字指代相同圖式元件。
【具體實(shí)施方式】
[0028]呈現(xiàn)以下描述以使所屬領(lǐng)域的技術(shù)人員能夠制備并且使用實(shí)施例,并且在特定應(yīng)用以及其要求的背景下提供以下描述。所屬領(lǐng)域的技術(shù)人員將易于了解對(duì)所揭示的實(shí)施例的各種修改,并且在不脫離本發(fā)明的精神和范圍的情況下,本文本所定義的一般原理可以應(yīng)用于其它實(shí)施例以及應(yīng)用。因此,本發(fā)明不限于所示出的實(shí)施例,而是應(yīng)符合與本文本所揭示的原理以及特征一致的最廣范圍。
[0029]本發(fā)明的實(shí)施例解決了在內(nèi)容中心網(wǎng)絡(luò)(CCN)上建立雙向數(shù)據(jù)流的問題。具體來說,兩個(gè)網(wǎng)絡(luò)裝置可以通過向彼此提供本地流名稱來建立雙向流。例如,本地裝置可以向目標(biāo)裝置提供流名稱,并且所述目標(biāo)裝置散布包含本地裝置的流名稱和數(shù)據(jù)段號(hào)的興趣,以建立到達(dá)用于這些數(shù)據(jù)段的目標(biāo)裝置的反向路徑。
[0030]因此,網(wǎng)絡(luò)裝置可以通過返回基于這些數(shù)據(jù)段興趣命名的內(nèi)容對(duì)象在所建立的流上傳輸數(shù)據(jù)。這樣使得內(nèi)容對(duì)象名稱能夠完全從正在CCN上傳輸?shù)臄?shù)據(jù)中解耦,這樣提供了數(shù)據(jù)安全性并且降低了名稱復(fù)雜度。內(nèi)容對(duì)象有效負(fù)載可以攜載超文本傳送協(xié)議(HTTP)通信量、內(nèi)容中心聯(lián)網(wǎng)(CCN)消息或任何其它類型的數(shù)據(jù)。內(nèi)容對(duì)象的名稱簡單,因?yàn)樗鼈儼餮b置的可路由