基于軟件定義網(wǎng)絡(luò)實(shí)現(xiàn)內(nèi)容分發(fā)網(wǎng)絡(luò)的方法及系統(tǒng)的制作方法
【技術(shù)領(lǐng)域】
[0001]本申請涉及內(nèi)容分發(fā)技術(shù),尤指一種松耦合模式下的基于軟件定義網(wǎng)絡(luò)(SDN)實(shí)現(xiàn)內(nèi)容分發(fā)網(wǎng)絡(luò)(CDN)的方法及系統(tǒng)。
【背景技術(shù)】
[0002]SDN是近年來所涌現(xiàn)出的新的網(wǎng)絡(luò)技術(shù),其主要特點(diǎn)是控制和轉(zhuǎn)發(fā)分離、網(wǎng)絡(luò)開放可編程以及軟件和硬件分離。SDN使傳統(tǒng)通信網(wǎng)絡(luò)設(shè)備得以從專屬硬件綁定中解放出來、向基于通用硬件平臺加定制軟件的方向來發(fā)展,并通過開放的編程接口來實(shí)現(xiàn)網(wǎng)絡(luò)功能虛擬化、網(wǎng)絡(luò)管理簡單化以及網(wǎng)絡(luò)部署自動化,從而相比傳統(tǒng)網(wǎng)絡(luò)功能實(shí)現(xiàn)和工程實(shí)施大大節(jié)省設(shè)備成本、人力成本以及部署時間。按架構(gòu)層次劃分,SDN自頂向下基本上分成三個層次:應(yīng)用層、控制層以及數(shù)據(jù)層。
[0003]目前,業(yè)界對于控制層以及數(shù)據(jù)層正在或者已經(jīng)進(jìn)行了大量的標(biāo)準(zhǔn)化工作,但對于應(yīng)用層及其內(nèi)部的構(gòu)成,特別是如何對應(yīng)用進(jìn)行集成、管理、控制以及與其他現(xiàn)有應(yīng)用結(jié)合以及融合等討論較少,相對進(jìn)展也比較緩慢。這將導(dǎo)致SDN在易用性、開放性、可編程性、可管理性、可運(yùn)營性以及對現(xiàn)有應(yīng)用的兼容、互通等方面能力的缺失,不利于SDN產(chǎn)業(yè)的健康發(fā)展,特別是在如何快速建立SDN開發(fā)者社區(qū)并吸引大量的SDN應(yīng)用開發(fā)者集中到熱點(diǎn)應(yīng)用問題的解決、以及將現(xiàn)有網(wǎng)絡(luò)中的主要應(yīng)用向SDN技術(shù)遷移等方面,存在先天的障礙。
[0004]無論是開放網(wǎng)絡(luò)基金會(ONF, Open Networking Foundat1n)標(biāo)準(zhǔn)組織還是ODL(Open Daylight, SDN控制器開源組織),目前所定義的SDN的應(yīng)用層主要被定位為提供網(wǎng)絡(luò)應(yīng)用以及網(wǎng)絡(luò)業(yè)務(wù)編排等高度抽象功能,SDN應(yīng)用層可根據(jù)用戶應(yīng)用請求來進(jìn)行網(wǎng)絡(luò)資源申請和業(yè)務(wù)編排一SDN應(yīng)用層向上與外部用戶通過表述性狀態(tài)轉(zhuǎn)移(REST,Representat1nal State Transfer)方式提供應(yīng)用程序編程接口(API, Applicat1nProgramming Interface)調(diào)用(北極接口),為外部客戶實(shí)現(xiàn)定制化的應(yīng)用功能,以實(shí)現(xiàn)虛擬化的網(wǎng)絡(luò)應(yīng)用功能;SDN應(yīng)用層向下與SDN控制器通過REST方式提供網(wǎng)絡(luò)API接口調(diào)用(北向接口),向SDN控制層進(jìn)行資源申請,以實(shí)現(xiàn)虛擬化的網(wǎng)絡(luò)業(yè)務(wù)功能。
[0005]從SDN應(yīng)用層的角度來看,當(dāng)前就其相關(guān)的技術(shù)研討以及標(biāo)準(zhǔn)化工作大部分也均聚焦在SDN應(yīng)用層與SDN控制層之間的北向接口方面。而在SDN的實(shí)際應(yīng)用中,SDN對外提供的服務(wù)主要則是通過SDN應(yīng)用層與其外部上層應(yīng)用的接口(即北極接口,也稱應(yīng)用接口 )以及SDN應(yīng)用層內(nèi)部的編排功能來實(shí)現(xiàn)的。與北極接口相關(guān)的功能需求以及與編排本身相關(guān)的功能需求尚沒有被充分發(fā)掘出來,而與北極接口相關(guān)的上層業(yè)務(wù)以及使用北向接口的L4-L7業(yè)務(wù)或者未被討論,或者仍處于早期的研討中(如業(yè)務(wù)鏈應(yīng)用);特別是對于如何將現(xiàn)有網(wǎng)絡(luò)業(yè)務(wù)基于SDN進(jìn)行構(gòu)建,尚沒有開始進(jìn)行研討,這些也在一定程度上阻礙了 SDN應(yīng)用對其他現(xiàn)有應(yīng)用的集成以及進(jìn)而影響SDN應(yīng)用以及SDN自身的發(fā)展。
[0006]更進(jìn)一步地,對于業(yè)界已有應(yīng)用(比如⑶Ν、0ΤΤ、各種視頻媒體等業(yè)務(wù))如何充分借助SDN的架構(gòu),通過開放網(wǎng)絡(luò)編程接口,更好地使用底層承載網(wǎng)絡(luò)所提供的高效、高性能以及高性價比的虛擬網(wǎng)絡(luò)功能來實(shí)現(xiàn)滿足終端客戶不斷日益增長的對于服務(wù)質(zhì)量的需求以及整體運(yùn)維成本不斷下降的需求,目前尚處于非常早期的初始討論階段,也沒有明確的解決方案,而這也將制約現(xiàn)有業(yè)務(wù)向SDN的遷移步伐。
[0007]相對于SDN而言,⑶N是一項(xiàng)比較成熟的技術(shù),被用來為互聯(lián)網(wǎng)或電信專用網(wǎng)絡(luò)提供網(wǎng)頁和視頻等媒體內(nèi)容的分發(fā)和加速,其主要特點(diǎn)是將媒體內(nèi)容進(jìn)行多級緩存并為用戶提供就近服務(wù),從而為用戶提供較好的體驗(yàn)質(zhì)量。
[0008]⑶N的功能主要包括內(nèi)容分發(fā)(Content Distribut1n)和內(nèi)容交付(ContentDelivery,也稱媒體交付)兩個部分,基本功能包括內(nèi)容分發(fā)/交付、調(diào)度/控制、存儲/緩存以及媒體服務(wù)等。目前,在ITU-T、ETS1、3GPP、IETF等國際標(biāo)準(zhǔn)組織以及CCSA等行業(yè)標(biāo)準(zhǔn)組織都有CDN的相關(guān)定義和標(biāo)準(zhǔn)規(guī)范,用來承載IP網(wǎng)絡(luò)協(xié)議電視(IPTV)、有線網(wǎng)絡(luò)電視(CATV)、互聯(lián)網(wǎng)電視(OTT TV)以及移動流媒體等業(yè)務(wù)?,F(xiàn)有的CDN解決方案,因底層承載網(wǎng)絡(luò)不開放所限,作為業(yè)務(wù)網(wǎng)絡(luò)的CDN必須作為一個疊加層,并依附于底層承載網(wǎng)絡(luò)的能力而存在;同時,CDN解決方案所需要的服務(wù)器、存儲/緩存以及媒體服務(wù)器均使用專屬的硬件(比如刀片服務(wù)器/ATCA架構(gòu)服務(wù)器等),對于硬件架構(gòu)的依賴度非常之高,且沒有通用性;此外,CDN因?yàn)槠渌婕暗木W(wǎng)絡(luò)性能需求較高(如網(wǎng)絡(luò)帶寬、時延、抖動等),對網(wǎng)絡(luò)的擴(kuò)容以及由此而來的地址規(guī)劃、設(shè)備配置、節(jié)點(diǎn)部署、業(yè)務(wù)開通、軟件升級等管理方面都帶來了巨大的復(fù)雜性——比如,隨著IPTV、CATV、0TT、移動流媒體等業(yè)務(wù)的快速發(fā)展,⑶N正逐步與業(yè)務(wù)解耦而成為用于融合承載多種業(yè)務(wù)的內(nèi)容傳輸?shù)墓艿?,從而?dǎo)致CDN部署節(jié)點(diǎn)越來越多,網(wǎng)絡(luò)規(guī)模也越來越大,對CDN內(nèi)容路由的管理也越來越復(fù)雜,對多服務(wù)提供商/內(nèi)容提供商(CP/SP)的管理與服務(wù)配置也越來越困難。
[0009]針對目前CDN相關(guān)技術(shù)方案中存在的以上問題并結(jié)合CDN的技術(shù)發(fā)展趨勢,討論⑶N與SDN的融合以及如何引入SDN技術(shù)到⑶N解決方案中來并能夠行之有效地解決⑶N所面臨的承載網(wǎng)絡(luò)的封閉性、硬件的專屬性、管理的復(fù)雜性等方面的問題,進(jìn)而提升CDN的開放性、性價比以及易用性,并進(jìn)而降低⑶N的總體運(yùn)維成本,成為當(dāng)務(wù)之急。
【發(fā)明內(nèi)容】
[0010]為了解決上述問題,本發(fā)明提供一種基于SDN實(shí)現(xiàn)CDN的方法及系統(tǒng),能夠有效的解決CDN所面臨的承載網(wǎng)絡(luò)的封閉性、硬件的專屬性、管理的復(fù)雜性的問題。
[0011]為了達(dá)到本發(fā)明的目的,本申請?zhí)峁┮环N基于SDN實(shí)現(xiàn)⑶N的方法;包括:在SDN的應(yīng)用單元、編排單元、控制單元和數(shù)據(jù)轉(zhuǎn)發(fā)單元;其中,
[0012]應(yīng)用單元包括:請求模塊和操作模塊;其中,
[0013]請求模塊,用于添加CDN的完整業(yè)務(wù)邏輯功能,接收到CDN應(yīng)用申請時,向編排單元發(fā)送資源需求請求和業(yè)務(wù)編排請求;
[0014]操作模塊,用于接收到完成預(yù)留申請的信息后,根據(jù)內(nèi)容分發(fā)請求或媒體訪問請求,執(zhí)行相關(guān)操作;
[0015]編排單元包括:資源協(xié)同模塊和編排反饋模塊;其中,
[0016]資源協(xié)同模塊,用于接收資源需求請求和業(yè)務(wù)編排請求,結(jié)合SDN網(wǎng)絡(luò)的相關(guān)信息進(jìn)行業(yè)務(wù)編排;根據(jù)業(yè)務(wù)編排向控制單元發(fā)送所需資源的預(yù)留申請;
[0017]編排反饋模塊,用于完成所需資源的預(yù)留申請后,反饋完成所需資源的預(yù)留申請的信息給應(yīng)用單元;
[0018]控制單元,用于根據(jù)預(yù)留申請分配CDN應(yīng)用所需資源;分配CDN應(yīng)用所需資源后,結(jié)合網(wǎng)絡(luò)負(fù)載均衡和路由狀況確定內(nèi)容分發(fā)和內(nèi)容交付路徑;根據(jù)SDN控制面轉(zhuǎn)發(fā)相關(guān)策略創(chuàng)建數(shù)據(jù)鏈路層/網(wǎng)絡(luò)層L2/L3轉(zhuǎn)發(fā)表,并下發(fā)給數(shù)據(jù)轉(zhuǎn)發(fā)單元;反饋完成所需資源的預(yù)留申請給編排單元;
[0019]數(shù)據(jù)轉(zhuǎn)發(fā)單元,包含SDN數(shù)據(jù)轉(zhuǎn)發(fā)相關(guān)網(wǎng)絡(luò)設(shè)備,用于根據(jù)分配的CDN應(yīng)用所需資源,對CDN應(yīng)用的相關(guān)數(shù)據(jù)進(jìn)行存儲,根據(jù)控制單元確定的L2/L3轉(zhuǎn)發(fā)表,在應(yīng)用單元執(zhí)行相關(guān)操作時進(jìn)行數(shù)據(jù)轉(zhuǎn)發(fā)。
[0020]進(jìn)一步地,相關(guān)操作包括:與內(nèi)容分發(fā)請求或媒體訪問請求對應(yīng)的內(nèi)容分發(fā)、內(nèi)容緩存、內(nèi)容路由和內(nèi)容交付。
[0021]進(jìn)一步地,操作模塊具體包括:分發(fā)子模塊、緩存子模塊、交付子模塊和路由子模塊;其中,
[0022]分發(fā)子模塊,用于接收到完成預(yù)留申請的信息后,根據(jù)內(nèi)容分發(fā)請求,按照預(yù)先設(shè)定的分發(fā)策略將存儲在內(nèi)容數(shù)據(jù)庫中的內(nèi)容提取后注入到CDN網(wǎng)絡(luò)的內(nèi)容分發(fā)節(jié)點(diǎn);
[0023]緩存子模塊,用于接收所述內(nèi)容分發(fā)節(jié)點(diǎn)的內(nèi)容進(jìn)行緩存;根據(jù)緩存策略,將用戶終端訪問過的內(nèi)容預(yù)先緩存在CDN網(wǎng)絡(luò)的內(nèi)容緩存節(jié)點(diǎn)中,以快速地提供熱點(diǎn)內(nèi)容給鄰近的內(nèi)容交付節(jié)點(diǎn)和用戶終端使用;
[0024]交付子模塊,用于根據(jù)媒體訪問請求,將內(nèi)容緩存節(jié)點(diǎn)中