
本發(fā)明涉及無線計算機網(wǎng)絡通信
技術領域:
,特別是涉及命名數(shù)據(jù)網(wǎng)絡中基于主動緩存的數(shù)據(jù)傳輸方法及系統(tǒng)。
背景技術:
:NDN(NamedDataNetworking,命名數(shù)據(jù)網(wǎng)絡)是一種區(qū)別于IP網(wǎng)絡的新型網(wǎng)絡架構,遵從ICN(Information-CentricNetworking,信息中心網(wǎng)絡)的設計思想。NDN以數(shù)據(jù)及信息為中心,層級式地給數(shù)據(jù)命名以取替目前互聯(lián)網(wǎng)中的IP地址,并采用了內(nèi)容消費者與內(nèi)容生產(chǎn)者的操作在時間和空間分離的發(fā)布/訂閱模式,所有通信由內(nèi)容消費者驅動。NDN中只有InterestMessage(興趣包)和ContentObject(內(nèi)容包)兩種數(shù)據(jù)分組。請求特定數(shù)據(jù)時,消費者通過終端發(fā)送攜帶數(shù)據(jù)名字的興趣包,借助NDN路由節(jié)點多播地向外轉發(fā),按名稱尋找數(shù)據(jù);內(nèi)容生產(chǎn)者的數(shù)據(jù)名字與興趣包匹配時,相應的內(nèi)容包將按興趣包的轉發(fā)路線反向到達發(fā)出請求的內(nèi)容消費者(終端)。另外,NDN采用了通用的網(wǎng)內(nèi)緩存,內(nèi)容包會在途經(jīng)的節(jié)點沿路緩存,興趣包在到達生產(chǎn)者之前,有可能已經(jīng)到達有可匹配的內(nèi)容包副本的結點,從而減少獲取數(shù)據(jù)的時延,提高網(wǎng)絡響應速度。NDN支持終端在移動狀態(tài)下的數(shù)據(jù)傳輸。在現(xiàn)有技術中針對終端移動性問題,在終端節(jié)點切換即將開始時,發(fā)送類型為“消費者移動開始”的請求消息至其原接入節(jié)點,同時終端停止發(fā)送興趣包;終端原接入節(jié)點根據(jù)“消費者移動開始”的請求,緩存發(fā)往終端原位置的數(shù)據(jù)消息;終端節(jié)點切換完成后,其原接入節(jié)點更新并轉發(fā)緩存的數(shù)據(jù)消息至終端新接入的節(jié)點。在現(xiàn)有技術中,為了防止節(jié)點切換前后數(shù)據(jù)丟失,終端發(fā)送“消費者移動開始”的請求消息后,停止發(fā)送興趣包。但這樣會導致在終端發(fā)送“消費者移動開始”的請求消息后,并且在終端與原接入節(jié)點斷開連接之前,無法接收到新的數(shù)據(jù),會造成整體切換過程的時延增大,此外,終端移動到新位置后從原接入節(jié)點獲取未完成接收的數(shù)據(jù),同樣會造成時延,因此現(xiàn)有技術節(jié)點切換過程中數(shù)據(jù)傳輸?shù)臅r延高。技術實現(xiàn)要素:本發(fā)明實施例的目的在于提供一種命名數(shù)據(jù)網(wǎng)絡中基于主動緩存的數(shù)據(jù)傳輸方法及系統(tǒng),以實現(xiàn)縮短節(jié)點切換過程中數(shù)據(jù)傳輸?shù)臅r延。具體技術方案如下:一種命名數(shù)據(jù)網(wǎng)絡中基于主動緩存的數(shù)據(jù)傳輸方法,應用于終端,包括:當終端開始移動時,獲取第一信號強度與時間形成的第一強度時間序列,及第一傳輸速率與時間形成的第一速率時間序列,其中,所述第一信號強度為所述終端與第一節(jié)點之間連接的信號強度,所述第一傳輸速率為所述終端與所述第一節(jié)點之間傳輸數(shù)據(jù)的速率,所述第一節(jié)點為所述終端節(jié)點切換前所連接的節(jié)點;根據(jù)所述第一強度時間序列,確定所述終端與所述第一節(jié)點斷開連接的切換開始時間;根據(jù)所述切換開始時間及所述第一速率時間序列,確定所述終端已請求,但在節(jié)點切換開始前無法完成接收的待緩存內(nèi)容;向所述第一節(jié)點發(fā)送標識所述待緩存內(nèi)容的第一興趣包,以使所述第一節(jié)點接收并根據(jù)所述第一興趣包,將所述待緩存內(nèi)容緩存到所述第一節(jié)點對應的節(jié)點子集中;在所述終端切換連接至第二節(jié)點后,向所述第二節(jié)點發(fā)送用于請求所述待緩存內(nèi)容的第二興趣包;接收由所述第二節(jié)點根據(jù)所述第二興趣包,從所述第一節(jié)點對應的節(jié)點子集中獲取并發(fā)送的所述待緩存內(nèi)容。一種命名數(shù)據(jù)網(wǎng)絡中基于主動緩存的數(shù)據(jù)傳輸方法,應用于網(wǎng)絡端,包括:接收并根據(jù)由終端發(fā)送的標識待緩存內(nèi)容的第一興趣包,確定需要緩存的內(nèi)容為所述待緩存內(nèi)容,其中,所述待緩存內(nèi)容為所述終端已請求,但在節(jié)點切換開始前無法完成接收的內(nèi)容;獲取并根據(jù)整個命名數(shù)據(jù)網(wǎng)絡的通信情況,確定第一節(jié)點對應的節(jié)點子集,其中,所述第一節(jié)點為所述終端節(jié)點切換前所連接的節(jié)點;根據(jù)所述第一興趣包,緩存所述待緩存內(nèi)容到所述第一節(jié)點對應的節(jié)點子集中,以使第二節(jié)點根據(jù)由所述終端發(fā)送的用于請求待緩存內(nèi)容的第二興趣包,在所述第一節(jié)點對應的節(jié)點子集中,獲取并發(fā)送所述待緩存內(nèi)容,以使所述終端接收所述待緩存內(nèi)容,其中,所述第二節(jié)點為所述終端節(jié)點切換后所連接的節(jié)點。一種命名數(shù)據(jù)網(wǎng)絡中基于主動緩存的數(shù)據(jù)傳輸系統(tǒng),應用于終端,包括:時間序列獲取模塊,用于當終端開始移動時,獲取第一信號強度與時間形成的第一強度時間序列,及第一傳輸速率與時間形成的第一速率時間序列,其中,所述第一信號強度為所述終端與第一節(jié)點之間連接的信號強度,所述第一傳輸速率為所述終端與所述第一節(jié)點之間傳輸數(shù)據(jù)的速率,所述第一節(jié)點為所述終端節(jié)點切換前所連接的節(jié)點;開始時間計算模塊,用于根據(jù)所述第一強度時間序列,確定所述終端與所述第一節(jié)點斷開連接的切換開始時間;待緩存內(nèi)容確定模塊,用于根據(jù)所述切換開始時間及所述第一速率時間序列,確定所述終端已請求,但在節(jié)點切換開始前無法完成接收的待緩存內(nèi)容;第一興趣包發(fā)送模塊,用于向所述第一節(jié)點發(fā)送標識所述待緩存內(nèi)容的第一興趣包,以使所述第一節(jié)點接收并根據(jù)所述第一興趣包,將所述待緩存內(nèi)容緩存到所述第一節(jié)點對應的節(jié)點子集中;第二興趣包發(fā)送模塊,用于在所述終端切換連接至第二節(jié)點后,向所述第二節(jié)點發(fā)送用于請求所述待緩存內(nèi)容的第二興趣包;待緩存內(nèi)容接收模塊,用于接收由所述第二節(jié)點根據(jù)所述第二興趣包,從所述第一節(jié)點對應的節(jié)點子集中獲取并發(fā)送的所述待緩存內(nèi)容。一種命名數(shù)據(jù)網(wǎng)絡中基于主動緩存的數(shù)據(jù)傳輸系統(tǒng),應用于網(wǎng)絡端,包括:興趣包接收模塊,用于接收并根據(jù)由終端發(fā)送的標識待緩存內(nèi)容的第一興趣包,確定需要緩存的內(nèi)容為所述待緩存內(nèi)容,其中,所述待緩存內(nèi)容為所述終端已請求,但在節(jié)點切換開始前無法完成接收的內(nèi)容;節(jié)點子集確定模塊,用于獲取并根據(jù)整個命名數(shù)據(jù)網(wǎng)絡的通信情況,確定第一節(jié)點對應的節(jié)點子集,其中,所述第一節(jié)點為所述終端節(jié)點切換前所連接的節(jié)點;緩存模塊,用于根據(jù)所述第一興趣包,緩存所述待緩存內(nèi)容到所述第一節(jié)點對應的節(jié)點子集中,以使第二節(jié)點根據(jù)由所述終端發(fā)送的用于請求待緩存內(nèi)容的第二興趣包,在所述第一節(jié)點對應的節(jié)點子集中,獲取并發(fā)送所述待緩存內(nèi)容,以使所述終端接收所述待緩存內(nèi)容,其中,所述第二節(jié)點為所述終端節(jié)點切換后所連接的節(jié)點。本發(fā)明實施例提供的命名數(shù)據(jù)網(wǎng)絡中基于主動緩存的數(shù)據(jù)傳輸方法及系統(tǒng),終端向網(wǎng)絡端發(fā)送標識待緩存內(nèi)容的第一興趣包,并接收數(shù)據(jù)至連接斷開,相比于現(xiàn)有技術中終端提前停止接收數(shù)據(jù),在防止數(shù)據(jù)丟失的基礎上,減少了節(jié)點切換過程中數(shù)據(jù)傳輸?shù)臅r延;同時網(wǎng)絡端會將終端可能切換到的節(jié)點作為節(jié)點子集,并緩存待緩存內(nèi)容到節(jié)點子集中,終端在切換完成后通過節(jié)點子集獲取請求的內(nèi)容,可以縮短節(jié)點切換過程中數(shù)據(jù)傳輸?shù)臅r延。另外,終端向第一節(jié)點發(fā)送第一數(shù)據(jù)包,方便節(jié)點根據(jù)切換開始時間緩存待緩存內(nèi)容,節(jié)約了緩存資源;在確定節(jié)點子集時考慮了緩存成本,可以降低緩存的開銷。當然,實施本發(fā)明的任一產(chǎn)品或方法必不一定需要同時達到以上所述的所有優(yōu)點。附圖說明為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術中的技術方案,下面將對實施例或現(xiàn)有技術描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領域普通技術人員來講,在不付出創(chuàng)造性勞動的前提下,還可以根據(jù)這些附圖獲得其他的附圖。圖1為本發(fā)明實施例應用場景的示意圖;圖2為本發(fā)明實施例的命名數(shù)據(jù)網(wǎng)絡中基于主動緩存的數(shù)據(jù)傳輸方法,應用于終端的流程示意圖;圖3為本發(fā)明實施例的命名數(shù)據(jù)網(wǎng)絡中基于主動緩存的數(shù)據(jù)傳輸方法,應用于網(wǎng)絡端的流程示意圖;圖4為本發(fā)明實施例的確定節(jié)點i的節(jié)點子集的一種方法的流程示意圖;圖5為本發(fā)明實施例的確定節(jié)點i的節(jié)點子集的另一種方法的流程示意圖;圖6為本發(fā)明實施例的三級結構網(wǎng)絡的示意圖;圖7為本發(fā)明實施例的命名數(shù)據(jù)網(wǎng)絡中基于主動緩存的數(shù)據(jù)傳輸系統(tǒng)應用于終端的示意圖;圖8為本發(fā)明實施例的命名數(shù)據(jù)網(wǎng)絡中基于主動緩存的數(shù)據(jù)傳輸系統(tǒng)應用于網(wǎng)絡端的示意圖。具體實施方式下面將結合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術方案進行清楚、完整地描述,顯然,所描述的實施例僅僅是本發(fā)明一部分實施例,而不是全部的實施例?;诒景l(fā)明中的實施例,本領域普通技術人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其他實施例,都屬于本發(fā)明保護的范圍。NDN支持終端在移動狀態(tài)下的數(shù)據(jù)傳輸,移動過程中若發(fā)生節(jié)點的切換,終端在連接恢復后重發(fā)請求包。但等到與新的節(jié)點建立連接后再重新請求會產(chǎn)生較大的時延,對時延敏感的應用會受到較大影響,包括電視電話會議、在線游戲,以及目前流行的網(wǎng)絡視頻直播等實時業(yè)務。尤其在網(wǎng)絡中沒有終端請求的數(shù)據(jù)的副本時,興趣包必須轉發(fā)至生產(chǎn)者,終端從生產(chǎn)者處獲取數(shù)據(jù),造成明顯的時延。因此,NDN中需要建立一套更為有效的終端移動支持機制,有效地減少節(jié)點切換時產(chǎn)生的時延問題。參見圖1,圖1為本發(fā)明實施例應用場景的示意圖,包括:層1節(jié)點01,層2節(jié)點02,內(nèi)容消費者03,內(nèi)容生產(chǎn)者04。層1節(jié)點01是NDN網(wǎng)絡邊緣,終端設備可直接連接的節(jié)點。1個層2節(jié)點02與多個層1節(jié)點01相連,距離終端設備更遠(通信轉發(fā)跳數(shù)更多)。節(jié)點層級可以進一步增加,越高層的節(jié)點提供越廣泛的服務。在實際的網(wǎng)絡結構中,各節(jié)點的位置、資源并不完全相同,可以理解為分層次的網(wǎng)絡結構,高層級的節(jié)點可以理解為實際網(wǎng)絡中的網(wǎng)關節(jié)點或低層節(jié)點所共同連接的ISP(InternetServiceProvider,互聯(lián)網(wǎng)服務提供商)節(jié)點。整個場景包括以下步驟:步驟101:內(nèi)容消費者03(終端)正在參與實時業(yè)務(如網(wǎng)絡直播),靜止在位置1,并從當前連接的層1節(jié)點01處獲取數(shù)據(jù)(不斷向該節(jié)點發(fā)送興趣包),該節(jié)點向外多播地轉發(fā)興趣包到達內(nèi)容生產(chǎn)者04,匹配到相應的數(shù)據(jù)包,數(shù)據(jù)包逐跳返回達到內(nèi)容消費者03。步驟102:內(nèi)容消費者03開始移動,在未完成接收所有已請求的數(shù)據(jù)前,無線信號強度達到下限閾值,內(nèi)容消費者03斷開了和之前節(jié)點的連接。步驟103:內(nèi)容消費者03移動到位置2和新的層1節(jié)點01建立連接,完成切換。步驟104:內(nèi)容消費者03向新的層1節(jié)點01發(fā)送興趣包,包括之前未收到數(shù)據(jù)包回復的興趣包和新請求的興趣包,恢復到與步驟101相同的正常狀態(tài)。由于內(nèi)容生產(chǎn)者04與內(nèi)容消費者03距離遙遠,且網(wǎng)絡中距離內(nèi)容消費者03較近的節(jié)點處沒有直播業(yè)務的數(shù)據(jù)包副本,內(nèi)容消費者03連接到新節(jié)點后重發(fā)興趣包會造成明顯的時延,影響消費者體驗。本發(fā)明實施例提供了一種基于主動緩存和時間預測的終端移動支持策略,并將平面的緩存節(jié)點結構拓展為多級結構,當終端請求數(shù)據(jù)時,在發(fā)生節(jié)點切換的情況下,減少時延和緩存開銷,最小化移動成本。具體而言,本發(fā)明實施例針對的是終端已發(fā)出興趣包,但在完成相應數(shù)據(jù)包的接收之前就發(fā)生節(jié)點切換的場景。參見圖2,圖2為本發(fā)明實施例的命名數(shù)據(jù)網(wǎng)絡中基于主動緩存的數(shù)據(jù)傳輸方法,應用于終端的流程示意圖,包括:S201,當終端開始移動時,獲取第一信號強度與時間形成的第一強度時間序列,及第一傳輸速率與時間形成的第一速率時間序列,其中,第一信號強度為終端與第一節(jié)點之間連接的信號強度,第一傳輸速率為終端與第一節(jié)點之間傳輸數(shù)據(jù)的速率,第一節(jié)點為終端節(jié)點切換前所連接的節(jié)點。在命名數(shù)據(jù)網(wǎng)絡中,終端與第一節(jié)點之間進行通信連接,當終端向第一節(jié)點通信覆蓋的邊緣移動時,終端與第一節(jié)點之間連接的信號強度開始減弱,相應的終端與第一節(jié)點之間的傳輸速率也同時減小。獲取第一信號強度與時間的對應關系,作為第一強度時間序列,獲取第一傳輸速率與時間的對應關系,作為第一速率時間序列。S202,根據(jù)第一強度時間序列,確定終端與第一節(jié)點斷開連接的切換開始時間。根據(jù)第一強度時間序列,應用時間序列預測模型,預測切換開始時間。實際情況中,信號強度會出現(xiàn)抖動、干擾信號,故可首先進行小波變換,再進行序列預測。此處的時間序列預設模型為符合本發(fā)明實施例的任意模型。時間序列預設模型包括:自回歸模型、指數(shù)平滑模型及灰盒預測。S203,根據(jù)切換開始時間及第一速率時間序列,確定終端已請求,但在節(jié)點切換開始前無法完成接收的待緩存內(nèi)容。根據(jù)第一速率時間序列,應用時間序列預測模型,預測第一傳輸速率隨時間的變化。根據(jù)切換開始時間及預測的第一傳輸速率隨時間的變化,確定節(jié)點切換前,終端能夠從第一節(jié)點處接收的數(shù)據(jù)容量。進而確定終端已請求,但在節(jié)點切換開始前無法完成接收的內(nèi)容。S204,向第一節(jié)點發(fā)送標識待緩存內(nèi)容的第一興趣包,以使第一節(jié)點接收并根據(jù)第一興趣包,將待緩存內(nèi)容緩存到第一節(jié)點對應的節(jié)點子集中。將待緩存內(nèi)容的命名標識在第一興趣包中,并在連接斷開前發(fā)送第一興趣包至第一節(jié)點。S205,在終端切換連接至第二節(jié)點后,向第二節(jié)點發(fā)送用于請求待緩存內(nèi)容的第二興趣包。節(jié)點切換完成后,終端向第二節(jié)點發(fā)送第二興趣包,以請求待緩存內(nèi)容。第二興趣包的形式為現(xiàn)有的NDN中的通用形式。S206,接收由第二節(jié)點根據(jù)第二興趣包,從第一節(jié)點對應的節(jié)點子集中獲取并發(fā)送的待緩存內(nèi)容。當然,終端還可以向第二節(jié)點發(fā)送除第一興趣包和第二興趣包外的其他興趣包,用以請求除待緩存內(nèi)容外的其他內(nèi)容,此處不再贅述。在本發(fā)明實施例中,終端接收數(shù)據(jù)至連接斷開,相比于現(xiàn)有技術中終端提前停止接收數(shù)據(jù),減少了節(jié)點切換過程中數(shù)據(jù)傳輸?shù)臅r延,節(jié)約了網(wǎng)絡資源。另外,終端向網(wǎng)絡端發(fā)送標識待緩存內(nèi)容的第一興趣包,網(wǎng)絡端根據(jù)第一數(shù)據(jù)包選取緩存內(nèi)容,能夠有效防止切換過程中數(shù)據(jù)的丟失。可選的,向第一節(jié)點發(fā)送標識待緩存內(nèi)容的第一興趣包,包括:步驟一,獲取移動終端正在接收的數(shù)據(jù)包的數(shù)據(jù)容量,作為對比容量。步驟二,在對比容量大于,節(jié)點切換前終端還能夠從第一節(jié)點處接收的數(shù)據(jù)容量時,向第一節(jié)點發(fā)送標識待緩存內(nèi)容及標識切換開始時間的第一興趣包,其中,切換開始時間為終端與第一節(jié)點斷開連接的時間。對比容量小于數(shù)據(jù)量閾值(節(jié)點切換前終端還能夠從第一節(jié)點處接收的數(shù)據(jù)容量),表示終端在與第一節(jié)點斷開連接之前,可以完成正在接收的數(shù)據(jù)包的接收,終端完成該數(shù)據(jù)包的接收,然后對下一個數(shù)據(jù)包進行判斷。對比容量大于數(shù)據(jù)閾值,表示終端與第一節(jié)點斷開連接之前,無法完成正在接收的數(shù)據(jù)包的接收,終端向第一節(jié)點發(fā)送第一興趣包。相比現(xiàn)有的NDN中的興趣包,第一興趣包添加了移動消息,且第一興趣包標識待緩存的待緩存內(nèi)容??蛇x的,第一興趣包如表1所示:表1ContentNameSelectorNonceHandoverinformation其中,ContentName用于標識待緩存內(nèi)容(記錄待緩存內(nèi)容的命名),Handoverinformation用于標識切換開始時間。第一興趣包中的Selector與Nonce與現(xiàn)有技術興趣包中的Selector與Nonce相同,用于輔助路由和轉發(fā)過程。在本發(fā)明實施例中,給出了終端發(fā)送第一興趣包的具體實現(xiàn)方法,在對比容量小于數(shù)據(jù)量閾值時發(fā)送第一興趣包,第一興趣包中標識的待緩存內(nèi)容及切換開始時間更加準確,這是因為終端獲取的第一強度時間序列及第一速率時間序列越長,預測結果越準確,且預測的時間越接近當前時間,預測結果越準確。網(wǎng)絡端根據(jù)第一興趣包進行數(shù)據(jù)的緩存,在待緩存內(nèi)容及切換開始時間越準確時,網(wǎng)絡端占用的緩存資源越少,節(jié)約了網(wǎng)絡資源。根據(jù)第一強度時間序列,通過預設的時間序列預測模型,預測出下一時間段的第一信號強度與時間形成的序列,并確定切換開始時間。根據(jù)第一速率時間序列,通過預設的時間序列預測模型,預測出下一時間段的第一傳輸速率與時間形成的序列,并確定數(shù)據(jù)量閾值。此處所說的時間序列預設模型為符合本發(fā)明實施例的任意模型,如指數(shù)平滑模型、灰盒預測、普通的自回歸模型、線性自回歸模型、雙曲線函數(shù)自回歸模型及指數(shù)函數(shù)自回歸模型,此處不再贅述??蛇x的,根據(jù)第一強度時間序列,確定終端與第一節(jié)點斷開連接的切換開始時間,包括:步驟一,根據(jù)第一強度時間序列,通過自回歸模型確定第二強度時間序列。第二強度時間序列中t時刻時終端與第一節(jié)點連接的信號強度為此處所說的自回歸模型為普通的自回歸模型。當然,此處還可以根據(jù)其他時間序列預設模型,如指數(shù)平滑模型、灰盒預測、雙曲線函數(shù)自回歸模型或指數(shù)函數(shù)自回歸模型,確定切換開始時間,此處不再贅述。步驟二,根據(jù)第二強度時間序列,通過線性自回歸模型確定第三強度時間序列。第三強度時間序列中t時刻時終端與第一節(jié)點連接的信號強度為步驟三,根據(jù)第二強度時間序列及第三強度時間序列,計算得到第四強度時間序列。根據(jù)確定第四強度時間序列,其中,為第四強度時間序列,at為建模參數(shù),且bt為建模參數(shù),且m為正整數(shù),T1為通過自回歸模型確定第二強度時間序列時,從第一強度時間序列中選取的數(shù)值的數(shù)量。步驟四,根據(jù)預設的終端與第一節(jié)點連接斷開連接時的信號強度值及第四強度時間序列,確定切換開始時間。獲取預設的終端與第一節(jié)點連接斷開時的信號強度值Xthreshold,根據(jù)確定切換開始時間。當預測的信號強度減小到連接斷開時的信號強度值時,節(jié)點切換開始,此時的時間即為切換開始時間。在本發(fā)明實施例中,給出了確定切換開始時間的具體計算方法,根據(jù)自回歸模型及線性自回歸模型預測第四強度時間序列,從而確定切換開始時間,比單獨應用自回歸模型或線性自回歸模型,切換開始時間的預測值更加準確??蛇x的,在本發(fā)明實施例的命名數(shù)據(jù)網(wǎng)絡中基于主動緩存的數(shù)據(jù)傳輸方法中,根據(jù)切換開始時間及第一速率時間序列,確定終端已請求,但在節(jié)點切換開始前無法完成接收的待緩存內(nèi)容,包括:步驟一,根據(jù)第一速率時間序列,通過自回歸模型確定第二速率時間序列。第二速率時間序列中,t時刻時終端與第一節(jié)點之間的傳輸速率為步驟二,根據(jù)第二速率時間序列,通過線性自回歸模型確定第三速率時間序列。第三速率時間序列中,t時刻時終端與第一節(jié)點之間的傳輸速率為步驟三,根據(jù)第二速率時間序列及第三速率時間序列,計算得到第四速率時間序列。根據(jù)確定第四速率時間序列,其中,為第四速率時間序列,ct為建模參數(shù),且dt為建模參數(shù),且m為正整數(shù)。T2為通過自回歸模型確定第二速率時間序列時,從第一速率時間序列中選取的數(shù)值的數(shù)量。步驟四,根據(jù)切換開始時間及第四速率時間序列,確定數(shù)據(jù)量閾值。根據(jù)確定數(shù)據(jù)量閾值,其中,為數(shù)據(jù)量閾值,TΔ為各數(shù)據(jù)傳輸速率對應的單位時間,n表示當前時間距離切換開始時間還需要經(jīng)過n個單位時間。步驟五,獲取當前正在接收的數(shù)據(jù)包的數(shù)據(jù)容量,在當前正在接收的數(shù)據(jù)包的數(shù)據(jù)容量大于數(shù)據(jù)量閾值時,將終端已請求但是還沒有完成接收的內(nèi)容確定為待緩存內(nèi)容。在本發(fā)明實施例中,給出了確定待緩存內(nèi)容的具體方法,根據(jù)自回歸模型及線性自回歸模型預測第四速率時間序列,從而確定待緩存內(nèi)容,比單獨應用自回歸模型或線性自回歸模型,確定的待緩存內(nèi)容更加準確。本發(fā)明首先具體地描述應用場景,然后確定了第一興趣包、切換開始時間及待緩存內(nèi)容。下面將對網(wǎng)絡端的實現(xiàn)流程進行說明。本發(fā)明實施例在NDN中實時監(jiān)測終端的移動狀態(tài),確定進行主動緩存的節(jié)點子集,并動態(tài)更新,同時考慮了時延與緩存開銷,并將平面緩存結構改進為多級緩存結構,進一步減少移動成本。參見圖3,圖3為本發(fā)明實施例的命名數(shù)據(jù)網(wǎng)絡中基于主動緩存的數(shù)據(jù)傳輸方法,應用于命名數(shù)據(jù)網(wǎng)絡的網(wǎng)絡端的流程示意圖,包括:S301,接收并根據(jù)由終端發(fā)送的標識待緩存內(nèi)容的第一興趣包,確定需要緩存的內(nèi)容為待緩存內(nèi)容,其中,待緩存內(nèi)容為終端已請求,但在節(jié)點切換開始前無法完成接收的內(nèi)容。第一節(jié)點接收由終端發(fā)送的第一興趣包,第一興趣包標識需要緩存的待緩存內(nèi)容,當然第一興趣包還可以標識終端與第一節(jié)點斷開連接的切換開始時間。S302,獲取并根據(jù)整個命名數(shù)據(jù)網(wǎng)絡的通信情況,確定第一節(jié)點對應的節(jié)點子集,其中,第一節(jié)點為終端節(jié)點切換前所連接的節(jié)點根據(jù)命名數(shù)據(jù)網(wǎng)絡的通信情況的歷史記錄,選取終端可能切換到的節(jié)點,作為第一節(jié)點對應的節(jié)點子集。S303,根據(jù)第一興趣包,緩存待緩存內(nèi)容到第一節(jié)點對應的節(jié)點子集中,以使第二節(jié)點根據(jù)由終端發(fā)送的用于請求待緩存內(nèi)容的第二興趣包,在第一節(jié)點對應的節(jié)點子集中,獲取并發(fā)送待緩存內(nèi)容,以使終端接收待緩存內(nèi)容,其中,第二節(jié)點為終端節(jié)點切換后所連接的節(jié)點。終端完成節(jié)點切換,與新的節(jié)點(第二節(jié)點)建立連接,終端向第二節(jié)點發(fā)送第二興趣包。第二節(jié)點根據(jù)第二興趣包,在第一節(jié)點對應的節(jié)點子集中獲取緩存的待緩存內(nèi)容,并向終端發(fā)送待緩存內(nèi)容。在本發(fā)明實施例中,網(wǎng)絡端確定第一節(jié)點對應的節(jié)點子集,并將待緩存內(nèi)容緩存到第一節(jié)點對應的節(jié)點子集當中,當終端向第二節(jié)點請求待緩存內(nèi)容時,第二節(jié)點從第一節(jié)點對應的節(jié)點子集中獲取待緩存內(nèi)容,并發(fā)送給終端,降低了節(jié)點切換過程中數(shù)據(jù)傳輸?shù)臅r延??蛇x的,在根據(jù)第一興趣包,緩存待緩存內(nèi)容到第一節(jié)點對應的節(jié)點子集中時,當達到預設的緩存停止條件時,停止緩存待緩存內(nèi)容。如果切換過程較長,即終端處于斷開連接的時間較長,第一節(jié)點對應的節(jié)點子集可能會緩存大量內(nèi)容,從而浪費了緩存資源,因此需要設定緩存停止條件。緩存停止條件包括:緩存的待緩存內(nèi)容的數(shù)據(jù)容量達到緩存容量閾值Cpre、待緩存內(nèi)容全部緩存完成及節(jié)點切換結束(終端連接到新的節(jié)點)。在本發(fā)明實施例中,給出了緩存停止條件,有效的防止緩存資源的浪費,節(jié)約了網(wǎng)絡資源。終端開始移動并即將開始節(jié)點切換時,將向當前所連接的第一節(jié)點發(fā)送特殊信息(第一興趣包),告知網(wǎng)絡端切換開始時間及待緩存內(nèi)容。網(wǎng)絡端根據(jù)終端切換到第一節(jié)點的鄰居節(jié)點的轉移概率,選擇第一節(jié)點對應的節(jié)點子集主動緩存待緩存內(nèi)容,以便終端完成節(jié)點切換連接到第二節(jié)點后,直接獲取待緩存內(nèi)容。在本發(fā)明實施例中,可以直接將終端可能切換到的節(jié)點全部加入到第一節(jié)點對應的節(jié)點子集中,也可以從終端可能切換到的節(jié)點中選取至少一個節(jié)點作為第一節(jié)點對應的節(jié)點子集。可選的,接收并根據(jù)由終端發(fā)送的標識待緩存內(nèi)容的第一興趣包,確定需要緩存的內(nèi)容為待緩存內(nèi)容,包括:步驟一,接收由終端發(fā)送的,標識待緩存內(nèi)容及標識切換開始時間的第一興趣包,其中,切換開始時間為終端與第一節(jié)點斷開連接的時間。步驟二,根據(jù)第一興趣包中的切換開始時間,確定開始緩存待緩存內(nèi)容的時間。網(wǎng)絡端能夠根據(jù)切換開始時間制定緩存開始的時間。如將切換開始時間制定為緩存開始的時間,或將切換開始時間的前0.1秒設定為緩存開始的時間。步驟三,根據(jù)第一興趣包中的待緩存內(nèi)容,確定需要緩存的內(nèi)容為待緩存內(nèi)容。在本發(fā)明實施例中,第一興趣包同時標識待緩存內(nèi)容及標識切換開始,根據(jù)第一興趣包確定何時緩存何種內(nèi)容,相比于一收到終端發(fā)送的消息就開始進行緩存,縮短了緩存占用的時間,能夠降低緩存成本,節(jié)約網(wǎng)絡資源??蛇x的,獲取并根據(jù)整個命名數(shù)據(jù)網(wǎng)絡的通信情況,確定第一節(jié)點對應的節(jié)點子集,包括:步驟一,獲取終端與第一節(jié)點斷開連接后,終端與網(wǎng)絡端中的各個節(jié)點建立連接的轉移概率,其中,第一節(jié)點為終端節(jié)點切換前所連接的節(jié)點。根據(jù)NDN中對終端行為的分析(如:移動軌跡數(shù)據(jù))可確定終端從目前連接的節(jié)點移動到其他節(jié)點的轉移概率。此處獲取轉移概率的方法為符合本發(fā)明實施例的任意方法,現(xiàn)有技術中計算轉移概率的方法均適用于本發(fā)明實施例。例如:終端完成一次從節(jié)點ri到節(jié)點rj的切換后,向rj發(fā)送ri的標識。根據(jù)該標識,rj向ri發(fā)送消息通知這一次轉移,建立e=(ri,rj)。各個節(jié)點分別收集終端從自身切換到其他節(jié)點次數(shù),ri中存儲的相關數(shù)據(jù)表示為Transition(ri)={(rj,nij)|rj∈V,(ri,rj)∈e},其中,Transition(ri)為節(jié)點切換存儲函數(shù),V為命名數(shù)據(jù)網(wǎng)絡中所有節(jié)點的集合,nij為終端從ri切換到rj的次數(shù)。Handover(ri)為終端從ri切換到其他節(jié)點的總次數(shù)。每接收到一次通知轉移的消息,ri中Handover(ri)增加1。若收到來自未采集節(jié)點rx的轉移消息,在Transition(ri)中添加一個新元素(rx,nix=1),Handover(ri)的值增加1。終端從rj轉移到rj的轉移概率為Pij=nij/Handover(ri)。隨著終端節(jié)點切換行為的累積、改變,從一個節(jié)點到另一個節(jié)點的轉移概率會動態(tài)更新。網(wǎng)絡剛開始運行時,發(fā)生節(jié)點切換的節(jié)點還沒有被采集到,各節(jié)點中沒有關于轉移概率的相關數(shù)據(jù),因此不會有節(jié)點被選中進行主動緩存,此時網(wǎng)絡對移動性的支持和原生NDN相同。隨著數(shù)據(jù)的采集、處理,轉移概率的判斷會趨于準確和穩(wěn)定,相應的選取節(jié)點子集進行主動緩存的方案就會逐漸生效。另外,由于轉移概率的計算來自與大量歷史數(shù)據(jù),低頻的錯誤數(shù)據(jù)(比如用戶主動關閉了網(wǎng)絡、關機,移動很遠后才重新接入)對結果的影響可以忽略。步驟二,分別獲取終端從網(wǎng)絡中的各個節(jié)點獲取數(shù)據(jù)的數(shù)據(jù)時延。步驟三,獲取并根據(jù)網(wǎng)絡中的各個節(jié)點的緩存情況,分別確定網(wǎng)絡中的各個節(jié)點的緩存成本。節(jié)點j的總緩存空間為已占用的空間為則節(jié)點j的緩存成本為μj為j節(jié)點的緩存利用率,且步驟四,根據(jù)轉移概率、數(shù)據(jù)時延及緩存成本,確定第一節(jié)點對應的節(jié)點子集。在本發(fā)明實施例中,給出了確定第一節(jié)點對應的節(jié)點子集的方法,考慮了緩存成本,降低了緩存的開銷,節(jié)約了網(wǎng)絡資源??蛇x的,根據(jù)轉移概率、數(shù)據(jù)時延及緩存成本,確定第一節(jié)點對應的節(jié)點子集,包括:根據(jù)確定時延總成本,其中,Ltotal為時延總成本,Pij為轉移概率中的終端與j節(jié)點連接的概率,為數(shù)據(jù)時延中的終端從j節(jié)點獲取數(shù)據(jù)的時延,Lmiss為數(shù)據(jù)時延中的終端從待緩存內(nèi)容的生產(chǎn)者獲取數(shù)據(jù)的時延,j節(jié)點為第一節(jié)點對應的節(jié)點子集中的節(jié)點。j∈S′表示j節(jié)點為第一節(jié)點對應的節(jié)點子集中的節(jié)點。根據(jù)確定緩存總成本,其中,Ctotal為緩存總成本,為緩存成本中的j節(jié)點緩存待緩存內(nèi)容的成本,j節(jié)點為第一節(jié)點對應的節(jié)點子集中的節(jié)點。根據(jù)Costtotal=wlLtotal+wcCtotal,確定全局總成本,其中,Costtotal為全局總成本,Ltotal為時延總成本,Ctotal為緩存總成本,wl為第一預設權重,wc為第二預設權重,且wl與wc均為預設的系數(shù)。wl與wc根據(jù)NDN的具體通信情況進行設定,當NDN中緩存資源緊張時,增加wc的數(shù)值,減少wl的數(shù)值。當NDN中緩存資源閑置較多時,增加wl的數(shù)值,減少wc的數(shù)值。具體的,可以設置為或更小,或更小。根據(jù)分別判斷命名數(shù)據(jù)網(wǎng)絡中的節(jié)點是否屬于第一節(jié)點對應的節(jié)點子集,若則節(jié)點k屬于第一節(jié)點對應的節(jié)點子集,其中,表示第一節(jié)點對應的節(jié)點子集為空集時的全局總成本。表示第一節(jié)點對應的節(jié)點子集為空集時的全局總成本,即終端從生產(chǎn)者處獲取待緩存內(nèi)容的全局總成本;Costtotal(k)表示第一節(jié)點對應的節(jié)點子集僅由k節(jié)點構成時的全局總成本,即終端從k節(jié)點或生產(chǎn)者處獲取待緩存內(nèi)容的全局總成本?;喼?,最終可以表示為:在本發(fā)明實施例中,給出了確定第一節(jié)點對應的節(jié)點子集的方法,考慮了緩存成本,降低了緩存的開銷,節(jié)約了網(wǎng)絡資源。在實際NDN中,受節(jié)點設置位置的影響,節(jié)點之間的通信距離不一定與物理距離匹配,故終端發(fā)生節(jié)點切換后,連接的新節(jié)點與原節(jié)點的通信距離可能不止一跳。因此在本發(fā)明實施例中將鄰居節(jié)點定義為:終端進行一次節(jié)點切換時,節(jié)點切換后連接的新節(jié)點為,節(jié)點切換前連接的原節(jié)點的鄰居節(jié)點。在實際操作過程中,定義有向圖G=(V,E),其中,V={r1,r2…,rn}是網(wǎng)絡中所有節(jié)點的集合,且V中的節(jié)點都有層級式(與興趣包類似)的名字。在網(wǎng)絡中發(fā)生過從ri到rj的切換,則稱rj是ri的鄰居節(jié)點,用e=(ri,rj)表示,所有節(jié)點間的這種關系構成了集合E={e1,e2,…,ei}。節(jié)點ri的鄰居節(jié)點表示為Neighbor(ri)={rj|rj∈V,(ri,rj)∈E}??蛇x的,確定第一節(jié)點對應的節(jié)點子集,包括:步驟A,獲取第一節(jié)點的鄰居節(jié)點集合。步驟B,隨機獲取第一節(jié)點的鄰居節(jié)點集合中的一個節(jié)點k。步驟C,判斷k的是否滿足若滿足將k加入到第一節(jié)點對應的節(jié)點子集當中,并從第一節(jié)點的鄰居節(jié)點集合中移除k,若不滿足直接從第一節(jié)點的鄰居節(jié)點集合中移除k。步驟D,判斷第一節(jié)點的鄰居節(jié)點集合是否為空集,若第一節(jié)點的鄰居節(jié)點集合不是空集返回步驟B繼續(xù)執(zhí)行,若第一節(jié)點的鄰居節(jié)點集合是空集,輸出第一節(jié)點對應的節(jié)點子集。在本發(fā)明實施例中,在第一節(jié)點的鄰居節(jié)點中確定第一節(jié)點對應的節(jié)點子集,相比于從所有節(jié)點中選取第一節(jié)點對應的節(jié)點子集,降低了網(wǎng)絡端運算的復雜度,節(jié)約了網(wǎng)絡資源??蛇x的,輸出第一節(jié)點對應的節(jié)點子集,包括:步驟E,獲取第一節(jié)點對應的節(jié)點子集中的所有節(jié)點,作為待分組節(jié)點;步驟F,分別確定待分組節(jié)點的父節(jié)點,將待分組節(jié)點中有相同父節(jié)點的節(jié)點分入到一個分組中,得到至少一組待判定分組;步驟G,進行父節(jié)點成本判定:隨機選取一組未進行父節(jié)點成本判定的待判定分組,判斷選取的待判定分組中所有節(jié)點的全局總成本的和,是否大于選取的待判定分組中節(jié)點的父節(jié)點的全局總成本,若選取的待判定分組中所有節(jié)點的全局總成本的和,大于選取的待判定分組中節(jié)點的父節(jié)點的全局總成本,將選取的待判定分組中節(jié)點的父節(jié)點加入到第一節(jié)點對應的節(jié)點子集中,并從第一節(jié)點對應的節(jié)點子集中刪除選取的待判定分組中節(jié)點;步驟H,判斷至少一組待判定分組是否還有未進行父節(jié)點成本判定的分組,若至少一組待判定分組中有未進行父節(jié)點成本判定的分組,返回步驟G繼續(xù)執(zhí)行,若至少一組待判定分組中沒有未進行父節(jié)點成本判定的分組,輸出第一節(jié)點對應的節(jié)點子集。在本發(fā)明實施例中,將NDN由平面結構擴展到二級結構。在減少終端節(jié)點切換時延的基礎上,進一步減少了緩存開銷,節(jié)約了網(wǎng)絡資源。當然在本發(fā)明實施例中,可以根據(jù)實際需求,N-1次重復上述步驟E到步驟H,進而將NDN拓展到N(N為正整數(shù))級結構。參見圖4,圖4為本發(fā)明實施例的確定節(jié)點i的節(jié)點子集的一種方法的流程示意圖,包括:S401,確定終端發(fā)生節(jié)點切換前連接的節(jié)點為節(jié)點i。S402,獲取節(jié)點i的鄰居節(jié)點集合S,其中,節(jié)點i的鄰居節(jié)點為與節(jié)點i相鄰的節(jié)點。在本發(fā)明實施例中,一個節(jié)點的鄰節(jié)點是指與該節(jié)點通信距離為一跳的節(jié)點。S403,初始化節(jié)點i的節(jié)點子集為空集。S404,獲取集合S中的任意節(jié)點k。S405,判斷是否有若執(zhí)行步驟S406,若執(zhí)行步驟S407。S406,將節(jié)點k加入到節(jié)點i的節(jié)點子集當中。S407,從集合S中移除節(jié)點k。S408,判斷集合S是否為空集,若集合S為空集執(zhí)行步驟S409,若集合S不為空集執(zhí)行步驟S404。S409,判斷終端是否靜止、斷開與節(jié)點i的連接或與已預取的數(shù)據(jù)量達到緩存容量閾值,若否執(zhí)行步驟S402,若是輸出節(jié)點i的節(jié)點子集。在本發(fā)明實施例中,給出了確定節(jié)點子集的具體方法,為將待緩存內(nèi)容存儲到節(jié)點子集中提供了技術上的支持。參見圖5,圖5為本發(fā)明實施例的確定節(jié)點i的節(jié)點子集的另一種方法的流程示意圖,包括:S501,確定終端發(fā)生節(jié)點切換前連接的節(jié)點為節(jié)點i。S502,獲取節(jié)點i的鄰居節(jié)點集合S,其中,節(jié)點i的鄰居節(jié)點為與節(jié)點i相鄰的節(jié)點。在本發(fā)明實施例中,一個節(jié)點的鄰節(jié)點是指與該節(jié)點通信距離為一跳的節(jié)點。S503,初始化節(jié)點i的節(jié)點子集為空集。S504,獲取集合S中的任意節(jié)點k。S505,判斷是否滿足層1判定條件:若有執(zhí)行步驟S506,若無執(zhí)行步驟S507。S506,將節(jié)點k加入到節(jié)點i的節(jié)點子集當中。S507,從集合S中移除節(jié)點k。S508,判斷集合S是否為空集,若是執(zhí)行步驟S509,若否執(zhí)行步驟S504。S509,選取節(jié)點i的節(jié)點子集中,有相同父節(jié)點的節(jié)點。參見圖6,圖6為本發(fā)明實施例的三級結構網(wǎng)絡的示意圖,層1的每個節(jié)點處于層2的1個節(jié)點之下,即多個子節(jié)點對應1個父節(jié)點,層2的每個節(jié)點處于層3之下。以代表節(jié)點i的節(jié)點子集S′的父節(jié)點去重集合。以圖6為例,若S′={w,e,r},則令S′按各父節(jié)點拆分為個子集S′i,為中的元素數(shù)量,即父節(jié)點個數(shù),有S′1={q,w},S′2={e,r,t,y}。S510,判斷滿足層1判定條件:若是執(zhí)行步驟S511,若否則執(zhí)行步驟S512。終端從一個層2節(jié)點j獲取一個內(nèi)容項的時延成本表示為節(jié)點緩存相應內(nèi)容項的緩存成本為相應的層1的節(jié)點k,和變?yōu)闉楹腿纛A取到各S′i(i=1,2,…,)的總成本大于預取到其父節(jié)點的成本,則其父節(jié)點取代該S′i。層2節(jié)點m入選S′的判別式如下:S511,從節(jié)點i的節(jié)點子集中刪除該有相同父節(jié)點的節(jié)點,加入其父節(jié)點。S512,確定是否還有未判斷的節(jié)點,若是執(zhí)行步驟S509,若否則執(zhí)行步驟S513。S513,判斷終端是否靜止、斷開與節(jié)點i的連接或與已預取的數(shù)據(jù)量達到緩存容量閾值,若否執(zhí)行步驟S502,若是輸出節(jié)點i的節(jié)點子集。在本發(fā)明實施例中,將NDN由平面結構擴展到二級結構。在減少終端節(jié)點切換時延的基礎上,進一步減少了緩存開銷,節(jié)約了網(wǎng)絡資源。當然,在上述二級結構的基礎上,再次執(zhí)行S501到S513即可將NDN由二級結構擴展到三級結構,進而拓展到N(N為大于3的正整數(shù))級結構。在現(xiàn)實的NDN中,實際應用結構的級數(shù)可根據(jù)通信情況自行設定,當NDN中緩存資源緊張時,結構的級數(shù)設置較大。當NDN中緩存資源閑置較多時,結構的級數(shù)設置較小。具體的,可以將結構設置為一級(平面結構)或更大,二級或更大。本發(fā)明實施例中的平面結構(一級結構)是指只考慮NDN邊緣的節(jié)點(即只考慮層1中的節(jié)點),不考慮任何節(jié)點的父節(jié)點。二級結構是指除了考慮層1節(jié)點外,還需要考慮層1中的節(jié)點的父節(jié)點(層2中的節(jié)點)。N級結構指考慮層1到層N的全部節(jié)點。參見圖6,在本發(fā)明實施例中以三級節(jié)點網(wǎng)絡為例,說明在其層1與層2節(jié)點中選擇預取節(jié)點子集的部分過程。為了簡化計算,假設該結構中每個節(jié)點都有相同的緩存成本Ccache,終端向層1的節(jié)點請求數(shù)據(jù)的時延成本向層2的節(jié)點請求數(shù)據(jù)的時延成本為并且wc/wl=0.5。設定層1節(jié)點均為終端當前節(jié)點i的鄰居節(jié)點。已知終端開始切換后移動到層1節(jié)點集合S={q,w,e,r,t,y}中的轉移概率為{Pik(k∈s)}={0.2,0.4,0.1,0.05,0.1,0.15},則當前節(jié)點i的節(jié)點子集選擇策略如下:步驟一:獲取終端當前連接到的節(jié)點i,獲取其鄰居節(jié)點集合S={q,w,e,r,t,y},初始化節(jié)點i的節(jié)點子集步驟二:在S中任意選擇一個節(jié)點,假設為q。步驟三:判斷步驟四:將節(jié)點q選入節(jié)點i的節(jié)點子集,即S′={q}。步驟五:從集合S中移除節(jié)點q,即S={w,e,r,t,y}。步驟六:判斷集合S中還有節(jié)點,重復執(zhí)行S404到S408,直至得到S′={q,w}。步驟七:處理從層1選擇的節(jié)點子集,得到則S′只有一個分組S′={q,w},取層2節(jié)點u;步驟八:步驟九:層2節(jié)點u未被選中,主動緩存的節(jié)點子集為S′={q,w}。已沒有未判斷的節(jié)點。步驟十:終端已斷開與節(jié)點i的連接。步驟十一:算法結束。在本發(fā)明實施例中,給出了二級結構中節(jié)點子集的實際確定流程,為將待緩存內(nèi)容存儲到節(jié)點子集中提供了技術上的支持。需要說明的是,本發(fā)明實施例中的系統(tǒng)是應用上述命名數(shù)據(jù)網(wǎng)絡中基于主動緩存的數(shù)據(jù)傳輸方法的系統(tǒng),則上述命名數(shù)據(jù)網(wǎng)絡中基于主動緩存的數(shù)據(jù)傳輸方法的所有實施例均適用于該系統(tǒng),且均能達到相同或相似的有益效果。參見圖7,圖7為本發(fā)明實施例的命名數(shù)據(jù)網(wǎng)絡中基于主動緩存的數(shù)據(jù)傳輸系統(tǒng)應用于終端的示意圖,包括:時間序列獲取模塊701,用于當終端開始移動時,獲取第一信號強度與時間形成的第一強度時間序列,及第一傳輸速率與時間形成的第一速率時間序列,其中,第一信號強度為終端與第一節(jié)點之間連接的信號強度,第一傳輸速率為終端與第一節(jié)點之間傳輸數(shù)據(jù)的速率,第一節(jié)點為終端節(jié)點切換前所連接的節(jié)點。開始時間計算模塊702,用于根據(jù)第一強度時間序列,確定終端與第一節(jié)點斷開連接的切換開始時間。待緩存內(nèi)容確定模塊703,用于根據(jù)切換開始時間及第一速率時間序列,確定終端已請求,但在節(jié)點切換開始前無法完成接收的待緩存內(nèi)容;第一興趣包發(fā)送模塊704,用于向第一節(jié)點發(fā)送標識待緩存內(nèi)容的第一興趣包,以使第一節(jié)點接收并根據(jù)第一興趣包,將待緩存內(nèi)容緩存到第一節(jié)點對應的節(jié)點子集中。第二興趣包發(fā)送模塊705,用于在終端切換連接至第二節(jié)點后,向第二節(jié)點發(fā)送用于請求待緩存內(nèi)容的第二興趣包。待緩存內(nèi)容接收模塊706,用于接收由第二節(jié)點根據(jù)第二興趣包,從第一節(jié)點對應的節(jié)點子集中獲取并發(fā)送的待緩存內(nèi)容。在本發(fā)明實施例中,終端接收數(shù)據(jù)至連接斷開,相比于現(xiàn)有技術中終端提前停止接收數(shù)據(jù),減少了節(jié)點切換過程中數(shù)據(jù)傳輸?shù)臅r延,節(jié)約了網(wǎng)絡資源。另外,終端向網(wǎng)絡端發(fā)送標識待緩存內(nèi)容的第一興趣包,網(wǎng)絡端根據(jù)第一數(shù)據(jù)包選取緩存內(nèi)容,能夠有效防止切換過程中數(shù)據(jù)的丟失??蛇x的,開始時間計算模塊702,包括:第二強度時間序列計算子模塊,用于根據(jù)第一強度時間序列,通過自回歸模型確定第二強度時間序列。第三強度時間序列計算子模塊,用于根據(jù)第二強度時間序列,通過線性自回歸模型確定第三強度時間序列。第四強度時間序列計算子模塊,用于根據(jù)第二強度時間序列及第三強度時間序列,計算得到第四強度時間序列。切換開始時間確定子模塊,用于根據(jù)預設的終端與第一節(jié)點連接斷開連接時的信號強度值及第四強度時間序列,確定切換開始時間。在本發(fā)明實施例中,給出了確定切換開始時間的具體計算方法,根據(jù)自回歸模型及線性自回歸模型預測第四強度時間序列,從而確定切換開始時間,比單獨應用自回歸模型或線性自回歸模型,切換開始時間的預測值更加準確。參見圖8,圖8為本發(fā)明實施例的命名數(shù)據(jù)網(wǎng)絡中基于主動緩存的數(shù)據(jù)傳輸系統(tǒng)應用于網(wǎng)絡端的示意圖,包括:興趣包接收模塊801,用于接收并根據(jù)由終端發(fā)送的標識待緩存內(nèi)容的第一興趣包,確定需要緩存的內(nèi)容為待緩存內(nèi)容,其中,待緩存內(nèi)容為終端已請求,但在節(jié)點切換開始前無法完成接收的內(nèi)容。節(jié)點子集確定模塊802,用于獲取并根據(jù)整個命名數(shù)據(jù)網(wǎng)絡的通信情況,確定第一節(jié)點對應的節(jié)點子集,其中,第一節(jié)點為終端節(jié)點切換前所連接的節(jié)點。緩存模塊803,用于根據(jù)第一興趣包,緩存待緩存內(nèi)容到第一節(jié)點對應的節(jié)點子集中,以使第二節(jié)點根據(jù)由終端發(fā)送的用于請求待緩存內(nèi)容的第二興趣包,在第一節(jié)點對應的節(jié)點子集中,獲取并發(fā)送待緩存內(nèi)容,以使終端接收待緩存內(nèi)容,其中,第二節(jié)點為終端節(jié)點切換后所連接的節(jié)點。在本發(fā)明實施例中,網(wǎng)絡端確定第一節(jié)點對應的節(jié)點子集,并將待緩存內(nèi)容緩存到第一節(jié)點對應的節(jié)點子集當中,當終端向第二節(jié)點請求待緩存內(nèi)容時,第二節(jié)點從第一節(jié)點對應的節(jié)點子集中獲取待緩存內(nèi)容,并發(fā)送給終端,降低了節(jié)點切換過程中數(shù)據(jù)傳輸?shù)臅r延。需要說明的是,本發(fā)明實施例的命名數(shù)據(jù)網(wǎng)絡中基于主動緩存的數(shù)據(jù)傳輸系統(tǒng)應用于網(wǎng)絡端,則各節(jié)點除了緩存、轉發(fā)數(shù)據(jù)分組外,還具有接收移動信息、進行計算、選擇節(jié)點子集的功能。當然在實際部署中,也可以利用額外的服務器來實現(xiàn)上述的部分或全部功能,此處不再贅述??蛇x的,節(jié)點子集確定模塊802,包括:轉移概率獲取子模塊,用于獲取終端與第一節(jié)點斷開連接后,終端與網(wǎng)絡端中的各個節(jié)點建立連接的轉移概率,其中,第一節(jié)點為終端節(jié)點切換前所連接的節(jié)點。數(shù)據(jù)時延獲取子模塊,用于分別獲取終端從網(wǎng)絡中的各個節(jié)點獲取數(shù)據(jù)的數(shù)據(jù)時延。緩存成本獲取子模塊,用于獲取并根據(jù)網(wǎng)絡中的各個節(jié)點的緩存情況,分別確定網(wǎng)絡中的各個節(jié)點的緩存成本。節(jié)點子集選取子模塊,根據(jù)轉移概率、數(shù)據(jù)時延及緩存成本,確定第一節(jié)點對應的節(jié)點子集??蛇x的,節(jié)點子集選取子模塊,包括:時延總成本計算單元,用于根據(jù)確定時延總成本,其中,Ltotal為時延總成本,Pij為轉移概率中的終端與j節(jié)點連接的概率,為數(shù)據(jù)時延中的終端從j節(jié)點獲取數(shù)據(jù)的時延,Lmiss為數(shù)據(jù)時延中的終端從待緩存內(nèi)容的生產(chǎn)者獲取數(shù)據(jù)的時延,j節(jié)點為第一節(jié)點對應的節(jié)點子集中的節(jié)點。緩存總成本計算單元,用于根據(jù)確定緩存總成本,其中,Ctotal為緩存總成本,為緩存成本中的j節(jié)點緩存待緩存內(nèi)容的成本,j節(jié)點為第一節(jié)點對應的節(jié)點子集中的節(jié)點。全局總成本計算單元,用于根據(jù)Costtotal=wlLtotal+wcCtotal,確定全局總成本,其中,Costtotal為全局總成本,Ltotal為時延總成本,Ctotal為緩存總成本,wl為第一預設權重,wc為第二預設權重,且wl與wc均為預設的系數(shù)。計算比較單元,用于根據(jù)分別判斷命名數(shù)據(jù)網(wǎng)絡中的節(jié)點是否屬于第一節(jié)點對應的節(jié)點子集,若則節(jié)點k屬于第一節(jié)點對應的節(jié)點子集,其中,表示第一節(jié)點對應的節(jié)點子集為空集??蛇x的,計算比較單元,包括:鄰居節(jié)點獲取子單元,用于獲取第一節(jié)點的鄰居節(jié)點集合。節(jié)點隨機選擇子單元,用于隨機獲取第一節(jié)點的鄰居節(jié)點集合中的一個節(jié)點k。節(jié)點選取及排除子單元,用于判斷k的是否滿足若滿足將k加入到第一節(jié)點對應的節(jié)點子集當中,并從第一節(jié)點的鄰居節(jié)點集合中移除k,若不滿足直接從第一節(jié)點的鄰居節(jié)點集合中移除k。第一輸出子單元,用于判斷第一節(jié)點的鄰居節(jié)點集合是否為空集,若第一節(jié)點的鄰居節(jié)點集合不是空集返回節(jié)點隨機選擇子單元繼續(xù)執(zhí)行,若第一節(jié)點的鄰居節(jié)點集合是空集,輸出第一節(jié)點對應的節(jié)點子集。在本發(fā)明實施例中,在第一節(jié)點的鄰居節(jié)點中確定第一節(jié)點對應的節(jié)點子集,相比于從所有節(jié)點中選取第一節(jié)點對應的節(jié)點子集,降低了網(wǎng)絡端運算的復雜度,節(jié)約了網(wǎng)絡資源??蛇x的,第一輸出子單元,進一步用于:步驟E,獲取第一節(jié)點對應的節(jié)點子集中的所有節(jié)點,作為待分組節(jié)點。步驟F,分別確定待分組節(jié)點的父節(jié)點,將待分組節(jié)點中有相同父節(jié)點的節(jié)點分入到一個分組中,得到至少一組待判定分組。步驟G,進行父節(jié)點成本判定:隨機選取一組未進行父節(jié)點成本判定的待判定分組,判斷選取的待判定分組中所有節(jié)點的全局總成本的和,是否大于選取的待判定分組中節(jié)點的父節(jié)點的全局總成本,若選取的待判定分組中所有節(jié)點的全局總成本的和,大于選取的待判定分組中節(jié)點的父節(jié)點的全局總成本,將選取的待判定分組中節(jié)點的父節(jié)點加入到第一節(jié)點對應的節(jié)點子集中,并從第一節(jié)點對應的節(jié)點子集中刪除選取的待判定分組中節(jié)點。步驟H,判斷至少一組待判定分組是否還有未進行父節(jié)點成本判定的分組,若至少一組待判定分組中有未進行父節(jié)點成本判定的分組,返回步驟G繼續(xù)執(zhí)行,若至少一組待判定分組中沒有未進行父節(jié)點成本判定的分組,輸出第一節(jié)點對應的節(jié)點子集。可選的,興趣包接收模塊801,包括:第一興趣包獲取子模塊,用于接收由終端發(fā)送的,標識待緩存內(nèi)容及標識切換開始時間的第一興趣包,其中,切換開始時間為終端與第一節(jié)點斷開連接的時間。緩存時間確定子模塊,用于根據(jù)第一興趣包中的切換開始時間,確定開始緩存待緩存內(nèi)容的時間。緩存內(nèi)容確定子模塊,用于根據(jù)第一興趣包中的待緩存內(nèi)容,確定需要緩存的內(nèi)容為待緩存內(nèi)容。在本發(fā)明實施例中,第一興趣包同時標識待緩存內(nèi)容及標識切換開始,根據(jù)第一興趣包確定何時緩存何種內(nèi)容,相比于一收到終端發(fā)送的消息就開始進行緩存,縮短了緩存占用的時間,能夠降低緩存成本,節(jié)約網(wǎng)絡資源。需要說明的是,在本文中,諸如第一和第二等之類的關系術語僅僅用來將一個實體或者操作與另一個實體或操作區(qū)分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關系或者順序。而且,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設備中還存在另外的相同要素。本說明書中的各個實施例均采用相關的方式描述,各個實施例之間相同相似的部分互相參見即可,每個實施例重點說明的都是與其他實施例的不同之處。尤其,對于系統(tǒng)實施例而言,由于其基本相似于方法實施例,所以描述的比較簡單,相關之處參見方法實施例的部分說明即可。以上所述僅為本發(fā)明的較佳實施例而已,并非用于限定本發(fā)明的保護范圍。凡在本發(fā)明的精神和原則之內(nèi)所作的任何修改、等同替換、改進等,均包含在本發(fā)明的保護范圍內(nèi)。當前第1頁1 2 3