本發(fā)明屬于數(shù)據(jù)存儲領(lǐng)域,尤其涉及一種基于內(nèi)容分發(fā)網(wǎng)絡(luò)的內(nèi)容提供系統(tǒng)。
背景技術(shù):
CDN(Content Delivery Network,內(nèi)容分發(fā)網(wǎng)絡(luò))是一種通過在網(wǎng)絡(luò)各處放置節(jié)點(diǎn)服務(wù)器所構(gòu)成的在現(xiàn)有的互聯(lián)網(wǎng)基礎(chǔ)之上的一層智能虛擬網(wǎng)絡(luò)。CDN能夠?qū)崟r地根據(jù)網(wǎng)絡(luò)流量和各節(jié)點(diǎn)的連接、負(fù)載狀況以及到用戶的距離和響應(yīng)時間等綜合信息將用戶的請求重新導(dǎo)向離用戶最近的服務(wù)節(jié)點(diǎn)上,其目的是能夠選擇離用戶相對較近的節(jié)點(diǎn)向用戶發(fā)送用戶所需的內(nèi)容,緩解網(wǎng)絡(luò)擁擠的狀況,提高網(wǎng)站的響應(yīng)速度。
現(xiàn)有技術(shù)中的內(nèi)容分發(fā)網(wǎng)絡(luò)不能夠基于邊緣服務(wù)器的存儲能力進(jìn)行內(nèi)容分發(fā)和任務(wù)分配?;谏鲜鲋T多問題,現(xiàn)在亟需一種新的基于內(nèi)容分發(fā)網(wǎng)絡(luò)的內(nèi)容提供系統(tǒng),能夠在可用有限的存儲空間內(nèi)用較短時間完成同等數(shù)據(jù)的壓縮,通過分塊加載內(nèi)容的方式與以往一次性加載內(nèi)容的算法不同,初步節(jié)省了內(nèi)存空間;還能夠監(jiān)視當(dāng)前緩沖區(qū)使用情況,為可用存儲空間合理分配加載任務(wù);在真正加載時,異步喚醒加載進(jìn)程,從而在不降低計算性能的前提下降低程序的存儲空間的占用。
技術(shù)實現(xiàn)要素:
為了解決現(xiàn)有技術(shù)中的上述問題,本發(fā)明采用的技術(shù)方案如下:一種基于內(nèi)容分發(fā)網(wǎng)絡(luò)的內(nèi)容提供系統(tǒng),其特征在于,該系統(tǒng)包括:一個或多個內(nèi)容提供商,一個或多個管理服務(wù)器,一個或多個邊緣服務(wù)器,一個或者多個用戶端。
內(nèi)容提供商是系統(tǒng)中的數(shù)據(jù)源,對網(wǎng)絡(luò)中的邊緣服務(wù)器提供內(nèi)容;還用于對內(nèi)容進(jìn)行管理,將內(nèi)容進(jìn)行分類后以目錄頁面的形式呈現(xiàn)給用戶端,還用于將推薦內(nèi)容以頁面的形式呈現(xiàn)給用戶端;用戶端可以通過登陸內(nèi)容提供商提供的頁面的方式獲取內(nèi)容標(biāo)識和內(nèi)容推薦信息,并發(fā)出內(nèi)容請求;
管理服務(wù)器用于對內(nèi)容提供進(jìn)行管理,還用于對用戶端及其對應(yīng)的常用邊緣服務(wù)器進(jìn)行管理,根據(jù)用戶需求選擇提供內(nèi)容的常用邊緣服務(wù)器和/或非常用邊緣服務(wù)器進(jìn)行內(nèi)容提供,用于選擇常用服務(wù)器進(jìn)行相應(yīng)質(zhì)量等級內(nèi)容的加載;
邊緣服務(wù)器用于為客戶端提供所請求的質(zhì)量等級的內(nèi)容信息,用于存儲內(nèi)容提供商提供的內(nèi)容信息,每個邊緣服務(wù)器可以被標(biāo)記為一用戶端的常用邊緣服務(wù)器或非常用邊緣服務(wù)器;一用戶端的常用邊緣服務(wù)器為距離該用戶通信開銷較小且能夠頻繁為該一用戶端提供請求內(nèi)容的邊緣服務(wù)器;
用戶端用于根據(jù)需求請求內(nèi)容信息,用戶通過用戶端指定包含所請求內(nèi)容的質(zhì)量等級和到達(dá)速度的用戶需求;用戶端接收分塊的內(nèi)容,將分塊到達(dá)的內(nèi)容塊按順序存放在本地存儲空間中,按內(nèi)容的本身的邏輯順序呈現(xiàn)給用戶。
進(jìn)一步的,用戶端為用戶終端設(shè)備,包括手機(jī)、平板電腦、個人計算機(jī)。
進(jìn)一步的,用戶端在空閑時段定期的發(fā)出測試數(shù)據(jù)包,通過數(shù)據(jù)包應(yīng)答速度計算該用戶端到不同邊緣服務(wù)器的通信開銷,并將該通信開銷提供給管理服務(wù)器。
進(jìn)一步的,將用戶端進(jìn)行分組,同一分組內(nèi)的用戶端對應(yīng)相同或者相近的常用邊緣服務(wù)器組。
進(jìn)一步的,同一用戶端分組內(nèi)的用戶端的用戶具有相似的偏好,且位于同一物理區(qū)域內(nèi)。
進(jìn)一步的,管理服務(wù)器采集每次用戶端請求的內(nèi)容,基于該用戶采集的用戶請求信息和用戶端所在的物理區(qū)域進(jìn)行用戶分組。
進(jìn)一步的,內(nèi)容具有類型屬性,基于該內(nèi)容的類型信息統(tǒng)計用戶偏好。
進(jìn)一步的,內(nèi)容提供商為經(jīng)過帳號鑒權(quán)的用戶端提供內(nèi)容。
進(jìn)一步的,內(nèi)容提供商保存該用戶的帳號信息用于進(jìn)行帳號鑒權(quán)。
進(jìn)一步的,邊緣服務(wù)器為分布式服務(wù)器,管理服務(wù)器對該邊緣服務(wù)器進(jìn)行分布式管理。
本發(fā)明的有益效果包括:能夠在可用有限的存儲空間內(nèi)用較短時間完成同等數(shù)據(jù)的壓縮,通過分塊加載內(nèi)容的方式與以往一次性加載內(nèi)容的算法不同,初步節(jié)省了內(nèi)存空間;還能夠監(jiān)視當(dāng)前緩沖區(qū)使用情況,為可用存儲空間合理分配加載任務(wù);在真正加載時,異步喚醒加載進(jìn)程,從而在不降低計算性能的前提下降低程序的存儲空間的占用。
【附圖說明】
此處所說明的附圖是用來提供對本發(fā)明的進(jìn)一步理解,構(gòu)成本申請的一部分,但并不構(gòu)成對本發(fā)明的不當(dāng)限定,在附圖中:
圖1是本發(fā)明的一種基于內(nèi)容分發(fā)網(wǎng)絡(luò)的內(nèi)容提供系統(tǒng)的結(jié)構(gòu)圖。
【具體實施方式】
下面將結(jié)合附圖以及具體實施例來詳細(xì)說明本發(fā)明,其中的示意性實施例以及說明僅用來解釋本發(fā)明,但并不作為對本發(fā)明的限定。
參見附圖1,是本發(fā)明所應(yīng)用的一種基于內(nèi)容分發(fā)網(wǎng)絡(luò)的內(nèi)容提供系統(tǒng),該系統(tǒng)包括一個或多個內(nèi)容提供商,一個或多個管理服務(wù)器,一個或多個邊緣服務(wù)器,一個或者多個用戶端。
內(nèi)容提供商是系統(tǒng)中的數(shù)據(jù)源,對網(wǎng)絡(luò)中的邊緣服務(wù)器提供內(nèi)容;還用于對內(nèi)容進(jìn)行管理,將內(nèi)容進(jìn)行分類后以目錄頁面的形式呈現(xiàn)給用戶端,還用于將推薦內(nèi)容以頁面的形式呈現(xiàn)給用戶端;用戶端可以通過登陸內(nèi)容提供商提供的頁面的方式獲取內(nèi)容標(biāo)識和內(nèi)容推薦信息,并發(fā)出內(nèi)容請求;
管理服務(wù)器用于對內(nèi)容提供進(jìn)行管理,還用于對用戶端及其對應(yīng)的常用邊緣服務(wù)器進(jìn)行管理,根據(jù)用戶需求選擇提供內(nèi)容的常用邊緣服務(wù)器和/或非常用邊緣服務(wù)器進(jìn)行內(nèi)容提供,用于選擇常用服務(wù)器進(jìn)行相應(yīng)質(zhì)量等級內(nèi)容的加載;
邊緣服務(wù)器用于為客戶端提供所請求的質(zhì)量等級的內(nèi)容信息,用于存儲內(nèi)容提供商提供的內(nèi)容信息,每個邊緣服務(wù)器可以被標(biāo)記為一用戶端的常用邊緣服務(wù)器或非常用邊緣服務(wù)器;一用戶端的常用邊緣服務(wù)器為距離該用戶通信開銷較小且能夠頻繁為該一用戶端提供請求內(nèi)容的邊緣服務(wù)器;
用戶端用于根據(jù)需求請求內(nèi)容信息,用戶通過用戶端指定包含所請求內(nèi)容的質(zhì)量等級和到達(dá)速度的用戶需求;用戶端接收分塊的內(nèi)容,將分塊到達(dá)的內(nèi)容塊按順序存放在本地存儲空間中,按內(nèi)容的本身的邏輯順序呈現(xiàn)給用戶;
基于上述系統(tǒng),下面對本發(fā)明的一種基于內(nèi)容分發(fā)網(wǎng)絡(luò)的內(nèi)容提供方法進(jìn)行詳細(xì)說明:
(1)用戶端通過內(nèi)容請求界面發(fā)出針對指定內(nèi)容的內(nèi)容請求,該請求中攜帶內(nèi)容標(biāo)識;該內(nèi)容請求被發(fā)送給管理服務(wù)器;內(nèi)容請求中攜帶所請求的內(nèi)容的需求參數(shù)(Q,S);其中,Q為內(nèi)容質(zhì)量,S為到達(dá)速度;其中,內(nèi)容質(zhì)量限定的所請求的內(nèi)容的呈現(xiàn)質(zhì)量,通常,內(nèi)容質(zhì)量越高內(nèi)容的大小越大;而到達(dá)速度限定內(nèi)容到達(dá)用戶端的加載速度;內(nèi)容質(zhì)量和到達(dá)速度之間可能存在矛盾,當(dāng)內(nèi)容質(zhì)量較高時,可能需要犧牲到達(dá)速度;
優(yōu)選的:該內(nèi)容請求界面通過用戶端的應(yīng)用程序、網(wǎng)頁、特定功能來呈現(xiàn),該呈現(xiàn)的內(nèi)容由內(nèi)容提供商提供;
(2)管理服務(wù)器向該用戶端對應(yīng)的常用邊緣服務(wù)器組發(fā)送內(nèi)容查詢請求,每個常用邊緣服務(wù)器組根據(jù)內(nèi)容標(biāo)識從本地目錄中查找用戶端請求的內(nèi)容,如果查找到所請求的內(nèi)容,則返回所請求內(nèi)容的內(nèi)容質(zhì)量作為響應(yīng),否則不做響應(yīng);
管理服務(wù)器保存用戶端及其常用邊緣服務(wù)器組的對應(yīng)表;每個用戶端對應(yīng)的常用邊緣服務(wù)器組可能是相同或不同的(不同包括完全不同和部分不同);該對照表內(nèi)容被管理服務(wù)器實時更新;常用邊緣服務(wù)器組中的常用邊緣服務(wù)器選自和用戶端之間的通信開銷小于第一閾值的邊緣服務(wù)器;常用邊緣服務(wù)器做出一次響應(yīng),則其命中率增加1;每過一個時間周期命中率減少第一預(yù)設(shè)值,此時,如果命中率小于第二預(yù)設(shè)值,則將該命中率小于第二預(yù)設(shè)值的邊緣服務(wù)器從用戶端對應(yīng)的常用邊緣服務(wù)器組中刪除;如果一邊緣服務(wù)器和該用戶端之間的通信開銷小于第一閾值,則將其增加入該用戶端對應(yīng)的常用邊緣服務(wù)器組,并將其命中率設(shè)置為一初始值;優(yōu)選的:該初始值大于第二預(yù)設(shè)值;
(3)基于常用邊緣服務(wù)器的響應(yīng),選擇常用邊緣服務(wù)器或非常用邊緣服務(wù)器對用戶進(jìn)行內(nèi)容提供,以及基于內(nèi)容熱度選擇一個或多個常用邊緣服務(wù)器進(jìn)行內(nèi)容加載;
如果管理服務(wù)器接收到常用邊緣服務(wù)器的響應(yīng),則根據(jù)響應(yīng)常用邊緣服務(wù)器Li及其返回的內(nèi)容質(zhì)量QLi和需求參數(shù)(Q,S)選擇一個常用邊緣服務(wù)器提供內(nèi)容;具體的:根據(jù)公式(1)計算每個響應(yīng)常用邊緣服務(wù)器的平衡系數(shù)Bi,其中Ci為邊緣服務(wù)器Li和用戶端之間的通信開銷;該通信開銷值為動態(tài)值,需要進(jìn)行定期的進(jìn)行實時更新,w1為調(diào)整值,該調(diào)整值為管理服務(wù)器設(shè)置的預(yù)設(shè)值;選擇Bi最小的常用邊緣服務(wù)器作為所選擇的常用邊緣服務(wù)器;該常用邊緣服務(wù)器所能提供的內(nèi)容質(zhì)量以及到達(dá)速度和用戶端的需求最接近;
優(yōu)選的:當(dāng)一個常用邊緣服務(wù)器能夠提供多個質(zhì)量等級的內(nèi)容時,針對每個質(zhì)量等級均計算該平衡系數(shù)值;其中,質(zhì)量等級分為n個等級,分別為Q1~Qn;
如果管理服務(wù)器接沒有收到任何一個常用邊緣服務(wù)器的響應(yīng),則根據(jù)內(nèi)容熱度等級HT選擇一個或者多個常用邊緣服務(wù)器進(jìn)行內(nèi)容加載,并選擇一個非常用邊緣服務(wù)器提供內(nèi)容;其中熱度分為m個等級;
選擇一個非常用邊緣服務(wù)器,具體為:獲取通信開銷Ci小于第二閾值的非常用邊緣服務(wù)器中能夠提供內(nèi)容質(zhì)量等級大于等于Q的非常用邊緣服務(wù)器組,如果組中元素的個數(shù)小于1,則通知用戶等待;此時用戶需要等待常用邊緣服務(wù)器內(nèi)容加載后進(jìn)行內(nèi)容提供;否則,從該非常用邊緣服務(wù)器組中選擇通信開銷Ci最小的非常用邊緣服務(wù)器作為所選擇的非常用邊緣服務(wù)器;由該非常用邊緣服務(wù)器為用戶端提供內(nèi)容,具體為:獲取大小為SB的內(nèi)容塊Block,其中該SB=(w2×Q)/MIN{Ci},w2為調(diào)節(jié)因子,通信開銷較大的情況下,先發(fā)送較小的內(nèi)容塊;如果該非常用邊緣服務(wù)器能夠提供的內(nèi)容質(zhì)量大于Q,則將該內(nèi)容塊Block先進(jìn)行有損壓縮,將該內(nèi)容塊壓縮為質(zhì)量等級Q的內(nèi)容塊Q_Block,然后對該經(jīng)過有損壓縮后的內(nèi)容塊Q_Block進(jìn)行無損壓縮成為內(nèi)容塊C_Q_Block,然后將該內(nèi)容塊C_Q_Block提供給用戶端;
根據(jù)內(nèi)容熱度HT等級(HT為HT1~HTm,其中HT1熱度值最低,HTm熱度值最高)選擇一個或者多個常用邊緣服務(wù)器進(jìn)行內(nèi)容加載,具體為:
(A)如果內(nèi)容熱度P1×HTm<HT=<HTm;首先選擇通信開銷Ci最小的常用邊緣服務(wù)器加載質(zhì)量等級為Q的內(nèi)容,然后獲取剩余常用邊緣服務(wù)器組中每個常用邊緣服務(wù)器的可用存儲空間,將可用存儲空間從大到小排列,選擇排列前n-1的常用邊緣服務(wù)器分別加載除了質(zhì)量等級Q之外的n-1個質(zhì)量等級的內(nèi)容,每個常用邊緣服務(wù)器加載一個質(zhì)量等級的內(nèi)容;其中,P1為第一比率值;優(yōu)選的:P1=90%;
(B)如果內(nèi)容熱度P2×HTm<HT=<P1×HTm;首先選擇通信開銷Ci最小的常用邊緣服務(wù)器加載質(zhì)量等級為Q的內(nèi)容,然后獲取剩余常用邊緣服務(wù)器組中每個常用邊緣服務(wù)器的可用存儲空間,將可用存儲空間從大到小排列,選擇排列前(n-1)mod 2的常用邊緣服務(wù)器分別加載除了質(zhì)量等級Q之外的(n-1)mod 2個質(zhì)量等級的內(nèi)容,每個常用邊緣服務(wù)器加載一個質(zhì)量等級的內(nèi)容;其中,P2為第二比率值;優(yōu)選的:P1=80%;
(C)如果內(nèi)容熱度P3×HTm<HT=<P2×HTm;首先選擇通信開銷Ci最小的常用邊緣服務(wù)器加載質(zhì)量等級為Q的內(nèi)容,然后獲取剩余可用存儲空間最大的常用邊緣服務(wù)器用于加載質(zhì)量等級Qn的內(nèi)容,獲取可用存儲空間最小的常用邊緣服務(wù)器用于加載質(zhì)量等級Q1的內(nèi)容;其中,P3為第三比率值;優(yōu)選的:P1=50%;
(D)如果內(nèi)容熱度HT=<P3×HTm;則選擇通信開銷Ci最小的常用邊緣服務(wù)器加載質(zhì)量等級為Q的內(nèi)容,其中,P3為第三比率值;優(yōu)選的:P1=50%;(4)內(nèi)容提供商基于管理服務(wù)器的選擇,獲取相應(yīng)質(zhì)量等級的內(nèi)容,將該質(zhì)量等級的內(nèi)容進(jìn)行分塊和壓縮后提供到相應(yīng)常用邊緣服務(wù)器;具體為:針對每個需要向其提供內(nèi)容的常用邊緣服務(wù)器,內(nèi)容提供商首先創(chuàng)建提供進(jìn)程,該進(jìn)程獲取該常用邊緣服務(wù)器的可用接收緩存大小Siz_Buf,根據(jù)公式(2)計算內(nèi)容分塊大小Siz_BlK,其中CPmin_Qk為質(zhì)量等級Qk內(nèi)容對應(yīng)的最小壓縮率,PC為冗余百分比,PC為和壓縮算法對應(yīng)的預(yù)設(shè)值;
Siz_BlK=Siz_Buf/(CPmin_Qk×(1+PC)) (2)
進(jìn)程將內(nèi)容按從頭到尾的順序分成多個大小為Siz_BlK的塊,不足1塊大小的內(nèi)容分成1塊;在內(nèi)容提供商的發(fā)送緩存空間中申請大小為Siz_Buf的空間,進(jìn)程逐個的獲取每個分塊,將該分塊經(jīng)過壓縮后保存到該大小為Siz_Buf的發(fā)送緩存空間中,然后將該壓縮后的分塊發(fā)送到對應(yīng)的常用邊緣服務(wù)器中;在發(fā)送完成后,將該大小為Siz_Buf的空間釋放后,進(jìn)程進(jìn)入休眠狀態(tài),在接收到常用邊緣服務(wù)器接收完成的消息后,該進(jìn)程被喚醒并繼續(xù)下一內(nèi)容塊的獲取、壓縮和發(fā)送,直到所有的內(nèi)容塊均被處理完畢為止;
由于內(nèi)容提供商面向所有的邊緣服務(wù)器,因此其發(fā)送緩存空間非常有限,通過進(jìn)程異步喚醒的方式,使得發(fā)送緩存空間在時間維度和空間維度上均可以實現(xiàn)共享,從而增加了空間的利用度;
優(yōu)選的:質(zhì)量等級及其對應(yīng)的最小壓縮率關(guān)聯(lián)的保存在對照表中,該對照表保存在內(nèi)容提供商的本地存儲中;優(yōu)選的PC=10%;
(5)常用邊緣服務(wù)器用于計算可用接收緩存大小Siz_Buf,接收內(nèi)容提供商提供的內(nèi)容塊,并將接收到的內(nèi)容塊按順序保存到本地存儲空間中;具體為:常用邊緣服務(wù)器基于公式(3)計算可用接收緩存大小Siz_Buf;其中,Qk為管理服務(wù)器分配的要加載的內(nèi)容質(zhì)量,Buf_All為該常用邊緣服務(wù)器當(dāng)前全部可用接收緩存大小,Par_Cur為當(dāng)前正在并行加載的內(nèi)容的數(shù)量,Par_all為該常用邊緣服務(wù)器支持的最大并行加載內(nèi)容的數(shù)量;
Siz_Buf=Buf_All×(Qk/Qk+Q1)/(Par_all-Par_Cur) (3)
常用邊緣服務(wù)器創(chuàng)建接收進(jìn)程,該接收進(jìn)程在接收緩存空間中申請大小為Siz_Buf的空間,將接收到的內(nèi)容塊存放在該空間中,接收完畢后該接收到的內(nèi)容塊按內(nèi)容的邏輯順序和內(nèi)容標(biāo)識關(guān)聯(lián)保存載本地緩存空間中;常用邊緣服務(wù)器在當(dāng)前內(nèi)容塊接收完畢后,發(fā)送內(nèi)容塊接收完畢消息給內(nèi)容提供商以繼續(xù)后續(xù)內(nèi)容塊的提供;該申請的大小為Siz_Buf的空間在內(nèi)容加載過程中一直保留而不釋放,直到內(nèi)容對應(yīng)的所有內(nèi)容塊均加載完畢后,進(jìn)程釋放該申請的接收緩存空間并結(jié)束接收進(jìn)程;
常用邊緣服務(wù)器需要留出少量的空間,在超出支持的最大并行度之外還能允許最低服務(wù)質(zhì)量的內(nèi)容加載;
(6)接收質(zhì)量等級為Q的內(nèi)容的常用邊緣服務(wù)器提供內(nèi)容給用戶端;具體的:當(dāng)該接收質(zhì)量等級為Q的內(nèi)容的常用邊緣服務(wù)器接收到的內(nèi)容塊為所選擇非常用邊緣服務(wù)器還沒有提供給用戶端的內(nèi)容時,停止該非常用邊緣服務(wù)器的內(nèi)容提供,改為由該常用邊緣服務(wù)器進(jìn)行內(nèi)容提供;也就是說:當(dāng)常用邊緣服務(wù)器的加載速度追趕上非常用邊緣服務(wù)器的提供速度時,進(jìn)行提供邊緣服務(wù)器的切換;
(7)用戶端獲取常用邊緣服務(wù)器或非常用邊緣服務(wù)器提供的內(nèi)容塊,將接收到的內(nèi)容塊進(jìn)行解壓縮后按內(nèi)容的邏輯順序和內(nèi)容標(biāo)識關(guān)聯(lián)后保存在本地存儲空間中;接收到的內(nèi)容塊不需要全部到齊,只要符合呈現(xiàn)順序的內(nèi)容塊已經(jīng)接收完畢,就可以將該內(nèi)容塊按呈現(xiàn)順序呈現(xiàn)給用戶;
還包括熱點(diǎn)內(nèi)容主動推送的步驟:
(8)內(nèi)容提供商將新的熱點(diǎn)內(nèi)容提供給各個邊緣服務(wù)器;具體的:內(nèi)容提供商獲取活躍度高于第一活躍值的邊緣服務(wù)器組,獲取該邊緣服務(wù)器組中每個邊緣服務(wù)器的可用存儲空間大小,基于該存儲空間的大小為該邊緣服務(wù)器提供相應(yīng)質(zhì)量的等級的內(nèi)容;優(yōu)選的:為可用存儲空間較大的邊緣服務(wù)器提供質(zhì)量等級較高的內(nèi)容;
本發(fā)明的一種基于內(nèi)容分發(fā)網(wǎng)絡(luò)的內(nèi)容提供系統(tǒng),能夠在可用有限的存儲空間內(nèi)用較短時間完成同等數(shù)據(jù)的壓縮,通過分塊加載內(nèi)容的方式與以往一次性加載內(nèi)容的算法不同,初步節(jié)省了內(nèi)存空間;還能夠監(jiān)視當(dāng)前緩沖區(qū)使用情況,為可用存儲空間合理分配加載任務(wù);在真正加載時,異步喚醒加載進(jìn)程,從而在不降低計算性能的前提下降低程序的存儲空間的占用。
以上所述僅是本發(fā)明的較佳實施方式,故凡依本發(fā)明專利申請范圍所述的構(gòu)造、特征及原理所做的等效變化或修飾,均包括于本發(fā)明專利申請范圍內(nèi)。