TWI405440B - 同儕資料傳輸的排程方法及其節點與系統 - Google Patents

同儕資料傳輸的排程方法及其節點與系統 Download PDF

Info

Publication number
TWI405440B
TWI405440B TW99100078A TW99100078A TWI405440B TW I405440 B TWI405440 B TW I405440B TW 99100078 A TW99100078 A TW 99100078A TW 99100078 A TW99100078 A TW 99100078A TW I405440 B TWI405440 B TW I405440B
Authority
TW
Taiwan
Prior art keywords
download
upload
file
node
bandwidth
Prior art date
Application number
TW99100078A
Other languages
English (en)
Other versions
TW201112689A (en
Inventor
Lun Chia Kuo
Chung Wei Lin
Tzu Ming Weng
Original Assignee
Ind Tech Res Inst
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Ind Tech Res Inst filed Critical Ind Tech Res Inst
Priority to US12/795,630 priority Critical patent/US20110072143A1/en
Publication of TW201112689A publication Critical patent/TW201112689A/zh
Application granted granted Critical
Publication of TWI405440B publication Critical patent/TWI405440B/zh

Links

Description

同儕資料傳輸的排程方法及其節點與系統
本發明是有關於一種同儕(peer-to-peer)系統,且特別是有關於同儕資料傳輸的排程方法,以及使用此排程方法的節點與系統。
傳統的視訊推播系統會採用主從式的網路架構(client-server network architecture),當連結到視訊推撥系統之客戶端節點(client node)要下載視訊資料時,客戶端節點會從伺服端節點(server node)下載對應的檔案。但不幸地,當傳統的視訊推撥系統過大(客戶端節點數目過多),且具有大檔案大小之下載檔案同時被多個客戶端節點下載時,將會有網路擁塞與頻寬不足之問題發生。
在前述的狀況下,多個客戶端節點可能無法在預定的播放時間之前獲得視訊資料,且因此下載檔案在預訂的播放時間內並不完整。換句話說,客戶端節點可能獲得一個具有過期資訊的視訊資料。例如,視訊中可能攜帶了某些商品於2009年4月1日的特價訊息,且此視訊之預訂的播放時間是從2009年3月30日至2009年3月31日。但因為網路擁塞與頻寬不足的問題,客戶端獲得視訊資料的時間可能是在2009年4月1日之後。
對於廣告視訊推撥系統而言,廣告企業主可能會藉有網際網路來推撥廣告視訊至每一處的廣告顯示裝置。儘管網路頻寬日益漸增,但是視訊資料的大小也與日漸增,其 中視訊資料的大小與日漸增的目的在於滿足全高畫質視訊(full HD)或三維全高畫質視訊(full HD 3D)的需求。全高畫質視訊資料的位元傳輸率約為每秒25至30百萬位元(25-30 Mbps),且20分鐘左右之全三維全高畫質視訊的檔案大小甚至到達300億位元(30 Giga-bits)。據此,在主從式網路架構下,廣告企業主必須租借一條預定線路(例如T3線路)來試著保障伺服端節點的上傳頻寬。然而,預定線路的花費極為昂貴,且即使不考慮花費的問題,部分視訊有時候依然在視訊的到達截止時間後,才被客戶端節點所獲得。
最近,有些同儕軟體被提出來,以使每一個連結到網路的節點可以分享彼此的檔案,這些同儕軟體並同時改進頻寬不足的問題。
本發明之示範例子提供了一種同儕資料傳輸的排程方法,此同儕資料傳輸的排程方法考慮了第j個節點所要上傳之多個上傳檔案之到達截止時間與目前傳輸時間的多個時間差的至少其中之一與由第j個節點所要上傳之多個上傳檔案之多個檔案大小的至少其中之一來決定上傳檔案Fij 的分佈上傳頻寬Uij ,其中上傳檔案Fij 表示由第j個節點上傳給第i個節點之檔案。
本發明之示範例子提供了一種同儕資料傳輸的排程方法,此同儕資料傳輸的排程方法考慮了第i個節點所要下載之多個下載檔案之到達截止時間與目前傳輸時間的多個時間差 的至少其中之一與由第i個節點所要下載之多個下載檔案之多個檔案大小的至少其中之一來決定下載檔案Fij 的分佈下載頻寬Dij ,其中下載檔案Fij 表示由第i個節點自第j個節點所下載的檔案。
本發明之示範例子提供了一種同儕資料傳輸的排程方法,此同儕資料傳輸的排程方法考慮了第j個節點所要上傳之多個上傳檔案之到達截止時間與目前傳輸時間的多個時間差的至少其中之一與由第j個節點所要上傳之多個上傳檔案之多個檔案大小的至少其中之一來決定上傳檔案Fij 的分佈上傳頻寬Uij ,其中上傳檔案Fij 表示由第j個節點上傳給第i個節點之檔案。此同儕資料傳輸的排程方法更考慮了第i個節點所要下載之多個下載檔案之到達截止時間與目前傳輸時間的多個時間差的至少其中之一與由第i個節點所要下載之多個下載檔案之多個檔案大小的至少其中之一來決定下載檔案Fij 的分佈下載頻寬Dij ,其中下載檔案Fij 表示由第i個節點自第j個節點所下載的檔案。接著,此同儕資料傳輸的排程方法根據上傳檔案Fij 之分佈上傳頻寬Uij 與分佈下載頻寬Dij 中之較小者來配置由第j個節點上傳至第i個節點之上傳檔案Fij 的上傳頻寬。
本發明之示範例子提供了用於同儕資料傳輸的上傳節點,上傳節點上傳多個上傳檔案給多個下載節點,其中上傳檔案Fi 之分佈上傳頻寬Ui 是根據上傳節點所要上傳之多個上傳檔案之到達截止時間與目前傳輸時間的多個時間差的至少其中之一與由上傳節點所要上傳之多個上傳檔案之多個檔案大 小的至少其中之一而被決定,另外,上傳檔案Fi 為由上傳節點上傳給第i個下載節點之檔案。
本發明之示範例子提供了用於同儕資料傳輸的下載節點,下載節點自多個上傳節點下載多個下載檔案,其中下載檔案Fj 之分佈下載頻寬Dj 是根據下載節點所要下載之多個下載檔案之到達截止時間與目前傳輸時間的多個時間差的至少其中之一與下載節點所下載之多個下載檔案之多個檔案大小的至少其中之一而被決定,另外,下載檔案Fj 為下載節點自第j個上傳節點所下載之檔案。
本發明之示範例子提供了用於同儕資料傳輸的同儕系統,其中同儕系統包括了多個節點。下載檔案Fij 的分佈下載頻寬Dij 是根據第i個節點所要下載之多個下載檔案之到達截止時間與目前傳輸時間的多個時間差的至少其中之一與由第i個節點所要下載之多個下載檔案之多個檔案大小的至少其中之一而被決定,另外,下載檔案Fij 為第i個節點自第j個節點所下載之檔案。上傳檔案Fij 的分佈上傳頻寬Uij 是根據第j個節點所要上傳之多個上傳檔案之到達截止時間與目前傳輸時間的多個時間差的至少其中之一與由第個j節點所要上傳之多個上傳檔案之多個檔案大小的至少其中之一而被決定,另外,上傳檔案Fij 為第j個節點上傳給第i個節點之檔案。接著,根據上傳檔案Fij 之分佈上傳頻寬Uij 與分佈下載頻寬Dij 中之較小者來配置由第j個節點上傳至第i個節點之上傳檔案Fij 的上傳頻寬,第j個節點並用此上傳頻寬將上傳檔案Fij 上傳給第i個節點。
據此,本發明之示範例子所提供了用於同儕資料傳輸之排程方法、使用此同儕資料傳輸之排程方法之節點與系統如上所述。此同儕資料傳輸之排程方法改善了網路擁塞的問題,使得節點能有效率地分享檔案,並且可以避免節點在到達截止時間之後才收到檔案的情況。換言之,此同儕資料傳輸之排程方法可以保證節點在檔案之到達截止時間前可以獲得檔案。
為讓本發明之上述特徵和優點能更明顯易懂,下文特舉示範例子,並配合所附圖式作詳細說明如下。
以下將配合圖式與元件標號來說明本發明所提供的示範例子,其中圖式中相同之編號代表功能相同或結構近似的元件。除此之外,下列的說明僅是本發明的示範例子,並非用以限定本發明。
對於在同儕系統中有關下載檔案之應用而言,節點可能會接收多個下載檔案與傳輸多個上傳檔案。節點所接收的多個下載檔案具有不同播放的截止時間,因此每個下載檔案的優先權可以根據下載檔案之到達截止時間來決定。同樣地,節點所傳送的多個上傳載檔案亦具有不同的到達截止時間,因此每個上傳檔案的優先權可以根據上傳檔案之到達截止時間來決定。本發明之示範例子所提供的同儕資料傳輸的排程方法會考慮檔案的到達截止時間與其他因素,以決定檔案所要使用的傳輸頻寬,並藉此增加傳輸效率。
本發明之示範例子提供了一種同儕資料傳輸的排程方法,此同儕資料傳輸的排程方法考慮了第i個節點所要下載之 多個下載檔案之到達截止時間與目前傳輸時間的多個時間差的至少其中之一與由第i個節點所要下載之多個下載檔案之多個檔案大小的至少其中之一來決定下載檔案Fij 的分佈下載頻寬Dij ,其中下載檔案Fij 表示由第i個節點自第j個節點所下載的檔案。
除此之外,此同儕資料傳輸的排程方法更考慮了第j個節點所要上傳之多個上傳檔案之到達截止時間與目前傳輸時間的多個時間差的至少其中之一與由第j個節點所要上傳之多個上傳檔案之多個檔案大小的至少其中之一來決定上傳檔案Fij 的分佈上傳頻寬Uij ,其中上傳檔案Fij 表示由第j個節點上傳給第i個節點之檔案。此同儕資料傳輸的排程方法根據檔案Fij 之分佈上傳頻寬Uij 與分佈下載頻寬Dij 中之較小者來配置由第j個節點上傳至第i個節點之檔案Fij 的上傳頻寬。
如同前面所述,在決定下載檔案的分佈下載頻寬時,由第i個節點所下載的多個下載檔案中至少其中之一的至少一個到達截止時間與目前傳輸時間之至少一個時間差以及多個下載檔案中至少其中之一的檔案大小會被考慮;另外,在決定上傳檔案的分佈上傳頻寬時,由第j個節點所傳的多個傳檔案中至少其中之一的至少一個到達截止時間與目前傳輸時間之至少一個時間差以及多個傳檔案中至少其中之一的檔案大小會被考慮。
例如,要決定第i個節點下載給第j個節點之檔案Fij 的分佈下載頻寬時,則可以根據檔案Fij 的到達截止時間與目前傳輸時間之時間差與檔案Fij 之檔案大小的乘積來決定檔案Fij 之分佈下載頻寬,此時可以配置用以下載檔案Fij 之下載頻寬為其分佈下載頻寬。同樣地,要決定第j節點上傳給第i節點之檔案Fij 的分佈上傳頻寬時,則可以根據檔案Fij 的到達截止時間與目前傳輸時間之時間差與檔案Fij 之檔案大小的乘積來決定檔案Fij 之分佈上傳頻寬,此時可以配置用以上傳檔案Fij 之上傳頻寬為其分佈上傳頻寬。
然而,為了方便解釋本發明,在以下的示範例子中,當要決定下載檔案的分佈下載頻寬時,由第i個節點所下載的多個下載檔案的多個到達截止時間與目前傳輸時間之多個時間差以及多個下載檔案的多個檔案大小會被考慮;另外,當要決定上傳檔案的分佈上傳頻寬時,由第j個節點所傳的多個傳檔案中多個到達截止時間與目前傳輸時間之多個時間差以及多個傳檔案之多個檔案大小會被考慮。
請參照圖1,圖1是根據本發明之示範例子所提供的目前傳輸時間與兩個檔案之到達截止時間之時間點示意圖。在圖1中,節點接收兩個檔案100與101,其中檔案100的到達截止時間t2為當天的九點(9:00),檔案101的到達截止時間t3為當天的十點(10:00),且目前傳輸時間t1為當天的8點(8:00)。顯然地,檔案100應該要在到達截止時間t2之前被節點接收,同樣地檔案101應該要在到達截止時間t3之前被節點接收。因為到達截止時間t2與目前傳輸時間t1之時間差TD1 小於到達截止時間t3與目前傳輸時間t1之時間差TD2 ,因此傳輸檔案100的優先權應該要大於傳輸檔案101的優先權,且用來傳輸檔案100與101的頻寬應該合理地根據傳輸檔案100的優先 權與傳輸檔案101的優先權來合理分配給節點。
在圖1所示的情況可能會在多媒體視訊推播系統被看到。因為全高畫質視訊的需求,位元傳輸率會異常地高,且在檔案被下載至節點後,節點例如為多媒體視訊顯示裝置,此多媒體視訊顯示裝置會儲存此檔案至儲存裝置,並且會輪流地播放存於儲存的檔案。同儕節點與廣告業主並不能接受畫面斷斷續續地被播放的情形,同儕節點與廣告業主皆不希望節點獲得一個不完整的檔案,且也不希望頻寬重複地被佔據,因此,大多數的視訊推播系統會使用檔案下載模式,而不使用串流模式。
視訊推播系統可以是一個同儕資料傳輸系統。請參照圖2,圖2是根據本發明之示範例子所提供的同儕資料傳輸系統之示意圖。同儕資料傳輸系統20包括了原始來源節點251、多個用戶節點201~215與多個網路硬碟NHD1~NHD3。網路硬碟NHD1~NHD3連結於用戶節點201、204、207、209、212與原始來源節點251。在同儕資料傳輸系統20的用戶節點201~215會彼此互相分享檔案,也就說,每一個用戶節點可以同時是上傳節點與下載節點,以藉此上傳檔案給其相連結的用戶節點,以及自其相連結的用戶節點下載檔案。另外,擁有相同檔案之多個相同片段的多個用戶節點可以被分配至同一個群組,例如用戶節點201~207組成一個群組G1,用戶節點206~211組成一個群組G2,以及用戶節點212~215組成一個群組G3。
原始來源節點251用來提供原始檔案,一般來說,同儕 資料傳輸系統20可能包括至少一個以上的原始來源節點,換言之,原始來源節點的數量並非用以限定本發明。來自於原始來源節點251的檔案可能是由多媒體內容供應商所供應,或者可能是原始來源節點251所要散佈給用戶節點的視訊檔案,亦即原始來源節點251可能是個人廣播站(personal radio station)。另外,由原始來源節點251所散佈的檔案可以被儲存在網路硬碟NHD1~NHD3中。每一個用戶節點,例如用戶節點201,可以登入至原始來源節點251以獲得播放清單252,或者原始來源節點251可以主動地散佈播放清單給用戶節點201。例如,用戶節點201可能藉由訂閱簡易資訊聚合(Really Simple Syndication,RSS)來獲得由原始來源節點251所散佈的檔案。
播放清單252可以被用戶節點201或者整個同儕資料傳輸系統的主控端裝置(未繪於圖2)所編輯。播放清單252的內容於圖3中介紹,請參照圖3,圖3是根據本發明之示範例子所提供的播放清單內容之表格。播放清單252包括用戶節點201之多個下載檔案的多個檔案名稱、多個檔案大小、多個到達截止時間、多傳輸優先權、多個串流類型與多個檔案類型。如同前面所述,播放清單252可以被用戶節點201或者整個同儕資料傳輸系統的主控端裝置(未繪於圖2)所編輯,因此例如下載檔案之多個到達截止時間或圖3中所述的其他資訊皆可以被修改與編輯。
檔案名稱為FK1之下載檔案具有120百萬位元組(Mega-Bytes,MBs)的檔案大小、2010.1.1-10:00:00的到達截 止時間(西洋年份:月:日:時:分:秒)、0的傳輸優先權、實況轉播的串流類型與視訊的檔案類型。檔案名稱為FK2之下載檔案具有200百萬位元組的檔案大小、2010.1.1-11:00:00的到達截止時間、1的傳輸優先權、隨選的串流類型與影像的檔案類型。檔案名稱為FK3之下載檔案具有50百萬位元組的檔案大小、2010.1.1-13:00:00的到達截止時間、3的傳輸優先權、實況轉播的串流類型與語音的檔案類型。除了上述的檔案類型外,上述檔案類型的種類還可能包括文件類型、音樂類型與其他目前可能的檔案類型。
擁有相同檔案之多個相同片段的多個用戶節點可以被分配至同一個群組,且散佈中心裝置(未繪於圖2)可以接收在同一群組之用戶節點的多個播放清單,並輸出一個群組播放清單(未繪於圖2),其中用戶節點可以是客戶端節點或伺服端節點,散佈中心裝置可以是至少一個客戶端節點、至少一個伺服端節點或同時是客戶端節點與伺服端節點,且主控端裝置與散佈中心裝置可以是同一個節點或者是不同節點。擁有相同檔案之多個相同片段的多個用戶節點被分配至同一個群組的程序被稱為同儕選擇(peer-selection)。參照圖4,圖4是根據本發明之示範例子所提供的群組播放清單內容之表格。在此示範例子中,擁有檔案FK1之至少一個相同資料片段的用戶節點201~207形成群組G1,擁有檔案FK2之至少一個相同資料片段的用戶節點206~211形成群組G2。
請接著參照圖5,圖5是根據本發明之示範例子所提供的檔案之緩衝映射表的表格。檔案(例如檔案FK1)的緩衝映射表 會表示用戶節點之檔案的片段之狀態,其中識別碼(Identification,ID)表示片段識別號碼,標記“O”表示對應的片段已經被下載,標記“X”表示對應的片段未被下載。在圖5中,檔案之第2、5與9個片段已經被下載,且其他的片段則未被下載。在用戶節點之緩衝映射表、散佈中心裝置與主控端裝置的緩衝映射表則在每隔一段時間ψ被更新,以試著保證緩衝映射表之資訊的正確性與即時性。
請參照圖6,圖6是根據本發明之示範例子所提供的用戶節點203、204與208之請求內容的表格。在此示範例子中,用戶節點203向用戶節點206要求傳輸檔案FK1給自己,用戶節點204向用戶節點206要求傳輸檔案FK2給自己,以及用戶節點208向用戶節點206要求傳輸檔案FK3給自己。在不考慮檔案大小的情況下,既然在檔案FK1~FK3之間,檔案FK1之到達截止時間為最小者,用來傳輸檔案FK1給用戶節點203之頻寬應該要大於用來傳輸檔案FK2與FK3的頻寬。然而,為了保證檔案可以在到達截止時間內傳輸完成,因此,除了考慮到達截止時間之外,本發明之示範例子所提供的傳輸方法更考慮了檔案大小。
接著,請參照圖6與圖7,圖7是根據本發明之示範例子所提供的距離播放截止時間前所剩餘之時間與檔案之優先權之曲線圖。在本發明之示範例子中,檔案的優先權可以被檔案的到達截止時間所決定,更進一步地說,檔案之優先權是根據到達截止時間與目前傳輸時間的時間差所決定,且到達截止時間與目前傳輸時間的時間差在圖7中稱為距離到達截止時間 前所剩餘的時間。在圖7中,檔案的優先權被曲線CU1或CU2所決定。曲線CU1是一條量化後的曲線,用來表示距離播放截止時間前所剩餘的時間與檔案之優先權的關係。曲線CU2是一條數值曲線(未經量化),用來表示距離播放截止時間前所剩餘的時間與檔案之優先權的關係。曲線CU2所表示之距離播放截止時間前所剩餘的時間與檔案之優先權的關係可以等式,Y=AX 來表達,其中Y表示目前檔案的優先權,變數X表示距離播放截止時間前所剩餘的時間,且變數A與α 為大於0的數字。變數A與α 皆可以被用戶節點或主控端裝置所調整與設定。在本發明之示範例子中,變數A與α 的值分別被設為23與0.97。然而,上述之等式、變數A與α 的值皆並非用以限定本發明。在圖6與圖7的示範例子中,檔案FK1~FK3優先權分別是100、25與13。
在計算圖6所示之檔案的優先權後,用來決定傳輸檔案的頻寬可以根據前述的多個檔案之多個優先權與多個檔案大小來決定。換句話說,用來傳輸檔案的頻寬可以根據距離播放截止時間前所剩餘的時間與檔案大小來決定。大多數的同儕資料傳輸系統具有不對稱的上傳頻寬與下載頻寬,例如上傳頻寬與下載頻分別是2百萬位元每秒與10百萬位元每秒。因此,由本發明之示範例子所提供的用以同儕資料傳輸之排程方法會決定每一個檔案之上傳頻寬,而在另一些示範例子中,上述的排程方法更決定了每一個檔案之上傳頻寬與下載頻寬。除此之外,在一些特定的情況下,上傳頻寬與下載頻寬是相同對稱的,因此上述的排程方法亦可以決定每一個檔案的下載頻寬。
請參照圖8,圖8是根據本發明之示範例子所提供的同儕資料傳輸的排程方法之流程圖。所述排程方法是用於同儕資料傳輸系統,其中同儕資料傳輸系統包括了多個用戶節點,且這些用戶節點可以是上傳節點與下載節點。在此,其中一個用戶節點被稱為第i個節點,且其中一個與第i個節點相連接的節點被稱為第j個節點。首先,在步驟S800中,第i個節點獲得其全部下載檔案的檔案大小之資訊,並且第i個節點所欲下載之全部下載檔案之多個優先權會根據全部下載檔案之到達截止時間與目前傳輸時間之多個時間差而被計算出來,其中計算第i個節點所欲下載之全部下載檔案之多個優先權的方式可以如同圖7及其相關說明而被計算,故在此便不在贅述計算檔案之優先權的方式。
另外,要注意的是,步驟S800的實施方式可以由第i個節點來執行程式來完成,或者由部分之節點合作執行程式來完成,又或者由中心的伺服節點執行程式來完成。換言之,上述之用來執行程式以完成步驟S800的裝置並非用以限定本發明,同樣地,圖8中之其他步驟的實施方式可以由第i個節點執行程式來完成,或者由部分之節點合作執行程式來完成,又或者由中心的伺服節點執行程式來完成。
接著,在步驟S810中,第i個節點所要下載之每一個下載檔案的下載權重會根據第i個節點之全部下載檔案的優先權與檔案大小來計算。用來計算第i個節點所要下載之每一個下載檔案的下載權重之等式並非用以限定本發明,在本發明之示範例子中,用來計算第i個節點所要下載之每一個下載檔案的 下載權重之等式可以表示如下: ,其中自第j個節點下載至第i個節點之下載檔案Fj 的下載權重表示為Cj ,自第j個節點下載至第i個節點之下載檔案Fj 的檔案大小與優先權則分別表示為size(Fj )與κj
第i個節點可使用之全部下載頻寬DBW為理想之全部下載頻寬DR乘上一個常數μ,亦即DBW=DR×μ,其中常數μ介於0至1,且可以是一個估計值或者是使用者所預設的值。在步驟S820中,自第j個節點下載至第i個節點之下載檔案Fj 的分佈下載頻寬Dj 會根據其下載權重Cj 而被計算,其中分佈下載頻寬Dj 是第i個節點可使用之全部下載頻寬DBW乘上下載權重Cj ,亦即Dj =DBW×Cj
接著,在步驟S830中,根據第i個節點之每一個下載檔案之分佈下載頻寬來分配第i個節點下載所對應之下載檔案的下載頻寬。其中一種最簡單的方式就是第i個節點之每一個下載檔案Fj 之分佈下載頻寬Dj 直接設為第i個節點下載所對應之下載檔案Fj 的下載頻寬。然而,為了避免一些不可預期的錯誤或中斷發生,一般來說,第i個節點所分配到之自第j個節點下載之下載檔案Fj 的下載頻寬亦可以是下載檔案Fj 之分佈下載頻寬Dj 減去一個正保護值;或者,第i個節點所分配到之自第j個節點下載之下載檔案Fj 的下載頻寬亦可以是下載檔案Fj 之分佈下載頻寬Dj 與第j個節點可用之上傳頻寬中最 小者。最後,在步驟S840中,第i個節點使用下載檔案Fj 的配置下載頻寬(亦即在步驟S830中所決定的下載檔案Fj 之下載頻寬)自第j個節點下載對應的下載檔案Fj
請參照圖9,圖9是根據本發明之另一示範例子所提供的同儕資料傳輸的排程方法之流程圖。所述排程方法是用於同儕資料傳輸系統,其中同儕資料傳輸系統包括了多個用戶節點,且這些用戶節點可以是上傳節點與下載節點。在此,其中一個用戶節點被稱為第j個節點,且其中一個與第j個節點相連接的節點被稱為第i個節點。首先,在步驟S900中,第j個節點獲得其全部之上傳檔案的檔案大小之資訊,並且第j個節點所欲上傳之全部上傳檔案之多個優先權會根據全部上傳檔案之到達截止時間與目前傳輸時間之多個時間差而被計算出來,其中計算第j個節點所欲上傳之全部的上傳檔案之多個優先權的方式可以如同圖7及其相關說明而被計算,故在此便不在贅述計算檔案之優先權的方式。
另外,要注意的是,步驟S900的實施方式可以由第j個節點來執行程式來完成,或者由部分之節點合作執行程式來完成,又或者由中心的伺服節點執行程式來完成。換言之,上述之用來執行程式以完成步驟S900的裝置並非用以限定本發明,同樣地,圖9中之其他步驟的實施方式可以由第j個節點執行程式來完成,或者由部分之節點合作執行程式來完成,又或者由中心的伺服節點執行程式來完成。 接著,在步驟S910中,第j個節點所要上傳之每一個上傳檔案的上傳權重會根據第j個節點之全部上傳檔案的優先權與檔 案大小來計算。用來計算第j個節點所要上傳之每一個上傳檔案的上傳權重之等式並非用以限定本發明,在本發明之示範例子中,用來計算第j個節點所要上傳之每一個上傳檔案的上傳權重之等式可以表示如下: ,其中自第j個節點上傳至第i個節點之上傳檔案Fi 的上傳權重表示為Ci ,自第j個節點上傳至第i個節點之上傳檔案Fi 的檔案大小與優先權則分別表示為size(Fi )與κi
第j個節點可使用之全部上傳頻寬UBW為理想之全部上傳頻寬UR乘上一個常數μ,亦即UBW=UR×μ,其中常數μ介於0至1,且可以是一個估計值或者是使用者所預設的值。在步驟S920中,自第j個節點上傳至第i個節點之上傳檔案Fi 的分佈上傳頻寬Uj 會根據其上傳權重Ci 而被計算,其中分佈上傳頻寬Ui 是第j個節點可使用之全部上傳頻寬UBW乘上上傳權重Ci ,亦即Ui =UBW×Ci
接著,在步驟S930中,根據第j個節點之每一個上傳檔案之分佈上傳頻寬來分配第j個節點上傳所對應之上傳檔案的上傳頻寬。其中一種最簡單的方式就是第j個節點之每一個上傳檔案Fi 之分佈上傳頻寬Ui 直接設為第j個節點上傳所對應之上傳檔案Fij 的上傳頻寬。然而,為了避免一些不可預期的錯誤或中斷發生,一般來說,第j個節點所分配到之上傳給第i個節點之上傳檔案Fi 的上傳頻寬亦可以是上傳檔案Fi 之分佈 上傳頻寬Ui 減去一個正保護值;或者,第j個節點所分配到之上傳給第i個節點之上傳檔案Fi 的上傳頻寬亦可以是上傳檔案Fi 之分佈上傳頻寬Ui 與第i個節點可用之下載頻寬中最小者。最後,在步驟S940中,第j個節點使用上傳檔案Fi 的配置上傳頻寬(亦即在步驟S930中所決定的上傳檔案Fi 之上傳頻寬)上傳上傳檔案Fi 給第i個節點。
請參照圖10,圖10是根據本發明之又一示範例子所提供的同儕資料傳輸的排程方法之流程圖。所述排程方法是用於同儕資料傳輸系統,其中同儕資料傳輸系統包括了多個用戶節點,且這些用戶節點可以是上傳節點與下載節點。在此,其中一個用戶節點被稱為第i個節點,且其中一個與第i個節點相連接的節點被稱為第j個節點。圖10中的步驟S810~S820與圖8中的相同,且圖10中的步驟S910~S920與圖9中的相同,因此圖10中的步驟S810~S820與S910~S920便不再贅述。然而,在此示範例子中,圖8與圖9之步驟所使用的變數做了些微的修正,其中變數Fij 表示第i個節點從第j個節點所下載之下載檔案,或者表示從第j個節點上傳給第i個節點之上傳檔案,變數Uij 表示從第j個節點上傳給第i個節點之上傳檔案Fij 之分佈上傳頻寬,變數Dij 表示第i個節點從第j個節點所下載之下載檔案Fij 之分佈下載頻寬。
在步驟S1000,根據所有用戶節點所擁有之檔案的資料片段的情況,將多個用戶節點分成數個群組,其中在每一個群組中的用戶節點會擁有相同之資料的至少一個片段。另外,進行分配群組的方式可以如同前面所述,故在此便不再贅述。在此 要注意的是,圖10之各步驟的實施方式如同前面所述,可以由一個節點來執行程式來完成,或者由部分之節點合作執行程式來完成,又或者由中心的伺服節點執行程式來完成。
在步驟S1010中,選擇檔案Fij 之分佈下載頻寬Dij 與分佈上傳頻寬Uij 中最小者作為第j個節點上傳檔案Fij 的備選上傳頻寬U’ij 。在步驟S1020中,計算每一個節點的殘餘上傳頻寬Diff ,其中第j個節點的殘餘上傳頻寬Diff 是第j個節點可使用之全部上傳頻寬減去第j個節點之全部上傳檔案的備選上傳頻寬之和。接著,在步驟S1030中檢察第j個節點之殘餘上傳頻寬是否大於0。若第j個節點之殘餘上傳頻寬大於0,則執行步驟S1040;否則,則執行步驟S1050。
在步驟S1040中,重新調整第j個節點之每一個上傳檔案之備選上傳頻寬,並將調後每一個備選上傳頻寬設為對應之分佈上傳頻寬,其中第j個節點之每一個上傳檔案之每一個備選上傳頻寬為原來的備選上傳頻寬加上一個正差異量,且調整之後的備選上傳頻寬之總和至多僅會等於第j個節點之可使用全部上傳頻寬。在步驟S1050中,根據第j個節點之每一個上傳檔案之備選上傳頻寬來分配第j個節點上傳所對應之上傳檔案的上傳頻寬。其中一種最簡單的方式就是第j個節點之每一個上傳檔案Fi 之備選上傳頻寬Ui 直接設為第j個節點上傳所對應之上傳檔案Fij 的上傳頻寬。最後,在步驟S1060中,第j個節點使用上傳檔案Fi 的配置上傳頻寬(亦即在步驟S1050中所決定的上傳檔案Fi 之上傳頻寬)上傳上傳檔案Fi 給第i個節點。
請參照圖2與圖10,用戶節點203、204與208皆連接至用戶節點206,且用戶節點203、204與208可使用之全部下載頻寬分別是350、90與500千位元每秒(Kilo-bits per second,Kbps)。假設用戶節點206可使用之全部上傳頻寬為500Kbps,用戶節點203、204與208所請求之檔案的播放截止時間分別是09點45分00秒、10點15分00秒與10點45分00秒,且用戶節點203、204與208所請求之檔案的檔案大小分別為10MBs、20MBs與100MBs,則戶節點203、204與208所請求之檔案的優先權根據檔案的播放截止時間與目前傳輸時間的時間差計算後分別是100、25與13。在步驟S1010中,則用戶節點206用來上傳多個檔案給用戶節點203、204與208之備選上傳頻寬分別是180、90與220Kbps。在步驟S1030中,用戶節點206的殘餘上傳頻寬大於0,因此,步驟S1040將會被執行。在步驟S1040中,用戶節點206用來上傳多個檔案給用戶節點203、204與208之備選上傳頻寬會分別被調整為183、90與227Kbps,同時並將分佈上傳頻寬設為調整後的備選上傳頻寬。最後,在步驟S1060中,用戶節點206會183、90與227Kbps的上傳頻寬分別將多個檔案上傳給用戶節點203、204與208。如此一來,圖10的方法將可以使得每一個用戶節點充份地運用其可使用的全部上傳頻寬,而不會有浪費上傳頻寬的情況發生。
綜上所述,本發明之示範例子所提供了用於同儕資料傳輸之排程方法、使用此同儕資料傳輸之排程方法之節點與系統如上所述。此同儕資料傳輸之排程方法改善了網路擁塞的問 題,使得節點能有效率地分享檔案,並且可以避免節點在到達截止時間之後才收到檔案的情況。換言之,此同儕資料傳輸之排程方法可以保證節點在檔案之到達截止時間前可以獲得檔案。除此之外,在其他的示範例子中,更提出了一種重新調整備選上傳頻寬的機制,以藉此讓每一個用戶節點可以充分地使用其可使用之全部上傳頻寬,而不會有上傳頻寬浪費的情況。
雖然本發明已以示範例子揭露如上,然其並非用以限定本發明,任何所屬技術領域中具有通常知識者,在不脫離本發明之精神和範圍內,當可作些許之更動與潤飾,故本發明之保護範圍當視後附之申請專利範圍所界定者為準。
100、101‧‧‧檔案
t1‧‧‧目前傳輸時間
t2、t3‧‧‧到達截止時間
TD1 、TD2 ‧‧‧時間差
20‧‧‧同儕資料傳輸系統
NHD1~NHD3‧‧‧網路硬碟
201~215‧‧‧用戶節點
G1~G3‧‧‧群組
251‧‧‧原始來源節點
252‧‧‧播放清單
CU1、CU2‧‧‧曲線
S800~S840‧‧‧步驟流程
S900~S940‧‧‧步驟流程
S1000~S1060‧‧‧步驟流程
圖1是根據本發明之示範例子所提供的目前傳輸時間與兩個檔案之到達截止時間之時間點示意圖。
圖2是根據本發明之示範例子所提供的同儕資料傳輸系統之示意圖。
圖3是根據本發明之示範例子所提供的播放清單內容之表格。
圖4是根據本發明之示範例子所提供的群組播放清單內容之表格。
圖5是根據本發明之示範例子所提供的檔案之緩衝映射表的表格。
圖6是根據本發明之示範例子所提供的用戶節點203、204與208之請求內容的表格。
圖7是根據本發明之示範例子所提供的距離播放截止日前所剩餘之時間與檔案之優先權之曲線圖。
圖8是根據本發明之示範例子所提供的同儕資料傳輸的排程方法之流程圖。
圖9是根據本發明之另一示範例子所提供的同儕資料傳輸的排程方法之流程圖。
圖10是根據本發明之又一示範例子所提供的同儕資料傳輸的排程方法之流程圖。
S800~S820‧‧‧步驟流程
S900~S920‧‧‧步驟流程
S1000~S1060‧‧‧步驟流程

Claims (38)

  1. 一種同儕資料傳輸的排程方法,用於一同儕系統,該同儕系統包括多個節點,該些節點包括一第i個節點與第j個節點,其中該第j個節點上傳多個上傳檔案給與其相連的節點,該些上傳檔案包括上傳給該第i個節點之上傳檔案Fij ,且該排程方法包括:根據該些上傳檔案之多個到達截止時間與一目前傳輸時間的多個時間差的至少其中之一與該些上傳檔案之多個檔案大小的至少其中之一來決定該上傳檔案Fij 的一分佈上傳頻寬Uij ,其中第j個節點可使用的全部上傳頻寬UBW為理想的全部上傳頻寬UR乘上一個常數μ,亦即UBW=UR×μ,其中常數μ介於0至1,且μ是一個估計值或者是使用者所預設的值,自第j個節點上傳至第i個節點的該上傳檔案Fij 的該分佈上傳頻寬Uij 會根據其上傳權重Ci 而被計算,其中該分佈上傳頻寬Uij 是第j個節點可使用的全部上傳頻寬UBW乘上上傳權重Ci ,亦即Uij =UBW×Ci
  2. 如申請專利範圍第1項所述之同儕資料傳輸的排程方法,其中決定該上傳檔案Fij 的該分佈上傳頻寬Uij 的步驟更包括:根據該些時間差之至少其中之一與該些檔案大小的至少其中之一決定該上傳檔案Fij 的該上傳權重Ci ;以及根據該上傳權重Ci 決定該上傳檔案Fij 的該分佈上傳頻寬Uij
  3. 如申請專利範圍第1項所述之同儕資料傳輸的排程方法,其中該分佈上傳頻寬Uij 是根據該些時間差的全部與該些檔案大小的全部來決定。
  4. 如申請專利範圍第3項所述之同儕資料傳輸的排程方法,其中決定該上傳檔案Fij 的該分佈上傳頻寬Uij 的步驟更包括:根據該些時間差決定該些上傳檔案的多個優先權;根據該些優先權與該些檔案大小決定該上傳檔案Fij 之該上傳權重Ci ;以及根據該上傳權重Ci 決定該上傳檔案Fij 的該分佈上傳頻寬Uij
  5. 如申請專利範圍第1項所述之同儕資料傳輸的排程方法,其中該第j個節點上傳該上傳檔案Fij 給該第i個節點的上傳頻寬等於該分佈上傳頻寬Uij
  6. 如申請專利範圍第1項所述之同儕資料傳輸的排程方法,其中該第j個節點上傳該上傳檔案Fij 給該第i個節點的上傳頻寬等於該分佈上傳頻寬Uij 減去一正保護值。
  7. 如申請專利範圍第1項所述之同儕資料傳輸的排程方法,其中該第j個節點上傳該上傳檔案Fij 給該第i個節點的上傳頻寬為該分佈上傳頻寬Uij 與該第i個節點之一可用之下載頻寬中最小者。
  8. 一種同儕資料傳輸的排程方法,用於一同儕系統,該同儕系統包括多個節點,該些節點包括一第i個節點與第j個節點,其中該第i個節點自與其相連的節點下載多 個下載檔案,該些下載檔案包括自第j個節點所下載之下載檔案Fij ,且該排程方法包括:根據該些下載檔案之多個到達截止時間與一目前傳輸時間的多個時間差的至少其中之一與該些下載檔案之多個檔案大小的至少其中之一來決定該下載檔案Fij 的一分佈下載頻寬Dij ,其中第i個節點可使用的全部下載頻寬DBW為理想的全部下載頻寬DR乘上一個常數μ,亦即DBW=DR×μ,其中常數μ介於0至1,且μ是一個估計值或者是使用者所預設的值,自第j個節點下載至第i個節點的該下載檔案Fij 的該分佈下載頻寬Dij 會根據其下載權重Cj 而被計算,其中該分佈下載頻寬Dij 是第i個節點可使用的全部下載頻寬DBW乘上下載權重Cj ,亦即Dij =DBW×Cj
  9. 如申請專利範圍第8項所述之同儕資料傳輸的排程方法,其中決定該下載檔案Fij 的該分佈下載頻寬Dij 的步驟更包括:根據該些時間差之至少其中之一與該些檔案大小的至少其中之一決定該下載檔案Fij 的該下載權重Cj ;以及根據該下載權重Cj 決定該下載檔案Fij 的該分佈下載頻寬Dij
  10. 如申請專利範圍第8項所述之同儕資料傳輸的排程方法,其中該分佈下載頻寬Dij 是根據該些時間差的全部與該些檔案大小的全部來決定。
  11. 如申請專利範圍第8項所述之同儕資料傳輸的排 程方法,其中決定該下載檔案Fij 的該分佈下載頻寬Dij 的步驟更包括:根據該些時間差決定該些下載檔案的多個優先權;根據該些優先權與該些檔案大小決定該下載檔案Fij 的該下載權重Cj ;以及根據該下載權重Cj 決定下載檔案Fij 的該分佈下載頻寬Dij
  12. 如申請專利範圍第8項所述之同儕資料傳輸的排程方法,其中該第i個節點自第j個節點下載該下載檔案Fij 的下載頻寬等於該分佈下載頻寬Dij
  13. 如申請專利範圍第8項所述之同儕資料傳輸的排程方法,其中該第i個節點自第j個節點下載該下載檔案Fij 的下載頻寬等於該分佈下載頻寬Dij 減去一正保護值。
  14. 如申請專利範圍第8項所述之同儕資料傳輸的排程方法,其中該第i個節點自第j個節點下載該下載檔案Fij 的該下載頻寬為該分佈下載頻寬Dij 與該第j個節點之一可用之上傳頻寬中最小者。
  15. 一種同儕資料傳輸的排程方法,用於一同儕系統,該同儕系統包括多個節點,該些節點包括一第i個節點與第j個節點,其中該第j個節點上傳多個上傳檔案給與其相連的節點,該第i個節點自與其相連的節點下載多個下載檔案,該些上傳檔案包括上傳給該第i個節點之上傳檔案Fij ,該些下載檔案包括自該第j個節點所下載之下載檔案Fij ,且該上傳檔案Fij 為該下載檔案Fij ,且該排程方法包括: 根據該些上傳檔案之多個到達截止時間與一目前傳輸時間的多個時間差的至少其中之一與該些上傳檔案之多個檔案大小的至少其中之一來決定該上傳檔案Fij 的一分佈上傳頻寬Uij ;以及根據該些下載檔案之多個到達截止時間與該目前傳輸時間的多個時間差的至少其中之一與該些下載檔案之多個檔案大小的至少其中之一來決定該下載檔案Fij 的一分佈下載頻寬Dij ;以及根據該上傳檔案Fij 之該分佈上傳頻寬Uij 與該下載檔案Fij 之該分佈下載頻寬Dij 中之較小者來配置由該第j個節點上傳至該第i個節點之該上傳檔案Fij 的一上傳頻寬,其中第j個節點可使用的全部上傳頻寬UBW為理想的全部上傳頻寬UR乘上一個常數μ,亦即UBW=UR×μ,其中常數μ介於0至1,且μ是一個估計值或者是使用者所預設的值,自第j個節點上傳至第i個節點的該上傳檔案Fij 的該分佈上傳頻寬Uij 會根據其上傳權重Ci 而被計算,其中該分佈上傳頻寬Uij 是第j個節點可使用的全部上傳頻寬UBW乘上上傳權重Ci,亦即Uij =UBW×Ci ,其中第i個節點可使用的全部下載頻寬DBW為理想的全部下載頻寬DR乘上一個常數μ,亦即DBW=DR×μ,自第j個節點下載至第i個節點的該下載檔案Fij 的該分佈下載頻寬Dij 會根據其下載權重Cj 而被計算,其中該分佈下載頻寬Dij 是第i個節點可使用的全部下載頻寬DBW乘上下載權重Cj ,亦即Dij =DBW×Cj
  16. 如申請專利範圍第15項所述之同儕資料傳輸的排程方法,其中決定該上傳檔案Fij 的該分佈上傳頻寬Uij 的步驟更包括:根據該些上傳檔案之該些到達截止時間與該目前傳輸時間的該些時間差的至少其中之一與該些上傳檔案之該些檔案大小的至少其中之一決定該上傳檔案Fij 的該上傳權重Ci ;以及根據該上傳權重決定該上傳檔案Fij 的該分佈上傳頻寬Uij ;其中決定該下載檔案Fij 的該分佈下載頻寬Dij 的步驟更包括:根據該些下載檔案之該些到達截止時間與該目前傳輸時間的該些時間差的至少其中之一與該些下載檔案之該些檔案大小的至少其中之一決定該下載檔案Fij 的該下載權重Cj ;以及根據該下載權重決定該下載檔案Fij 的該分佈下載頻寬Dij
  17. 如申請專利範圍第15項所述之同儕資料傳輸的排程方法,其中該分佈上傳頻寬Uij 是根據該些上傳檔案之該些到達截止時間與該目前傳輸時間的該些時間差的全部與該些上傳檔案之該些檔案大小的全部來決定,且該分佈下載頻寬Dij 是根據該些下載檔案之該些下載截止時間與該目前傳輸時間的該些時間差的全部與該些下載檔案之該些檔案大小的全部來決定。
  18. 如申請專利範圍第17項所述之同儕資料傳輸的排程方法,其中決定該上傳檔案Fij 的該分佈上傳頻寬Uij 的步驟更包括:根據該些上傳檔案之該些到達截止時間與該目前傳輸時間的該些時間差決定該些上傳檔案的多個優先權;根據該些上傳檔案的該些優先權與該些上傳檔案的該些檔案大小決定該上傳檔案Fij 的該上傳權重Ci ;以及根據該上傳權重決定該上傳檔案Fij 的該分佈上傳頻寬Uij ;其中決定該下載檔案Fij 的該分佈下載頻寬Dij 的步驟更包括:根據該些下載檔案之該些到達截止時間與該目前傳輸時間的該些時間差決定該些下載檔案的多個優先權;根據該些下載檔案的該些優先權與該些下載檔案的該些檔案大小決定該下載檔案Fij 的該下載權重Cj ;以及根據該下載權重Cj 決定該下載檔案Fij 的該分佈下載頻寬Dij
  19. 如申請專利範圍第15項所述之同儕資料傳輸的排程方法,其中配置由該第j個節點上傳至該第i個節點之該上傳檔案Fij 的該上傳頻寬之步驟更包括:選擇該上傳檔案Fij 之該分佈上傳頻寬Uij 與該下載檔案Fij 之該分佈下載頻寬Dij 中之較小者為該上傳檔案Fij 之一備選上傳頻寬;根據該些上傳檔案之該些備選上傳頻寬計算一殘餘上傳 頻寬;判斷該殘餘上傳頻寬是否大於0;若該殘餘上傳頻寬大於0,重新調整該些上傳檔案之該些備選上傳頻寬;以及若該殘餘上傳頻寬未大於0,則根據該上傳檔案Fij 的該備選上傳頻寬配置由該第j個節點上傳至該第i個節點之該上傳檔案Fij 的該上傳頻寬。
  20. 一種上傳節點,使用於一同儕系統中,該同儕系統包括該上傳節點與其連接的多個節點,該些節點包括一第i個節點,其中該上傳節點包括:一通信單元,經組態以上傳多個上傳檔案給與該上傳節點相連的節點,該些上傳檔案包括上傳給該第i個節點之上傳檔案Fi ;以及一控制器,其連接至該通信單元,該控制器經組態以根據該些上傳檔案之多個到達截止時間與一目前傳輸時間的多個時間差的至少其中之一與該些上傳檔案之多個檔案大小的至少其中之一來決定該上傳檔案Fi 的一分佈上傳頻寬Ui ,其中第j個節點可使用的全部上傳頻寬UBW為理想的全部上傳頻寬UR乘上一個常數μ,亦即UBW=UR×μ,其中常數μ介於0至1,且μ是一個估計值或者是使用者所預設的值,自第j個節點上傳至第i個節點的該上傳檔案Fi 的該分佈上傳頻寬Ui 會根據其上傳權重Ci 而被計算,其中該分佈上傳頻寬Ui 是第j個節點可使用的全部上傳頻寬UBW乘上上傳權重Ci ,亦即Ui =UBW×Ci
  21. 如申請專利範圍第20項所述之上傳節點,其中該上傳檔案Fi 之該上傳權重Ci 是根據該些時間差之至少其中之一與該些檔案大小的至少其中之一來決定,且該分佈上傳頻寬Ui 是根據該上傳權重Ci 來決定。
  22. 如申請專利範圍第20項所述之上傳節點,其中該分佈上傳頻寬Ui 是根據該些時間差的全部與該些檔案大小的全部來決定。
  23. 如申請專利範圍第22項所述之上傳節點,其中該些上傳檔案的多個優先權是根據該些時間差來決定,該上傳檔案Fi 之該上傳權重Ci 是根據該些優先權與該些檔案大小來決定,且該上傳檔案Fi 的該分佈上傳頻寬Ui 是根據該上傳權重來決定。
  24. 如申請專利範圍第20項所述之上傳節點,其中該上傳節點上傳該上傳檔案Fi 給該第i個節點的上傳頻寬等於該分佈上傳頻寬Ui
  25. 如申請專利範圍第20項所述之上傳節點,其中該上傳節點上傳該上傳檔案Fi 給該第i個節點的上傳頻寬等於該分佈上傳頻寬Ui 減去一正保護值。
  26. 如申請專利範圍第20項所述之上傳節點,其中該上傳節點上傳該上傳檔案Fi 給該第i個節點的上傳頻寬為該分佈上傳頻寬Ui 與該第i個節點之一可用之下載頻寬中最小者。
  27. 一種下載節點,用於一同儕系統,該同儕系統包括該下載節點與其相接多個節點,該些節點包括一第j個節點,其中該下載節點包括: 一通信單元,經組態以自與該下載節點相連的節點下載多個下載檔案,其中該些下載檔案包括自該第j個下載節點所下載之下載檔案Fj ;以及一控制器,其連接至該通信單元,該控制器經組態以根據該些下載檔案之多個到達截止時間與一目前傳輸時間的多個時間差的至少其中之一與該些下載檔案之多個檔案大小的至少其中之一來決定該下載檔案Fj 的一分佈下載頻寬Dj ,其中第i個節點可使用的全部下載頻寬DBW為理想的全部下載頻寬DR乘上一個常數μ,亦即DBW=DR×μ,其中常數μ介於0至1,且μ是一個估計值或者是使用者所預設的值,自第j個節點下載至第i個節點的該下載檔案Fj 的該分佈下載頻寬Dj 會根據其下載權重Cj 而被計算,其中該分佈下載頻寬Dj 是第i個節點可使用的全部下載頻寬DBW乘上下載權重Cj ,亦即Dj =DBW×Cj
  28. 如申請專利範圍第27項所述之下載節點,其中該下載檔案Fj 的該下載權重Cj 是根據該些時間差之至少其中之一與該些檔案大小的至少其中之一來決定,且該下載檔案Fj 的該分佈下載頻寬Dj 是根據該下載權重來決定。
  29. 如申請專利範圍第27項所述之下載節點,其中該分佈下載頻寬Dj 是根據該些時間差的全部與該些檔案大小的全部來決定。
  30. 如申請專利範圍第29項所述之下載節點,其中該些下載檔案的多個優先權是根據該些時間差來決定,該下載檔案Fj 的該下載權重Cj 是根據該些優先權與該些檔案大小來決 定,且該下載檔案Fj 的該分佈下載頻寬Dj 是根據該下載權重Cj 來決定。
  31. 如申請專利範圍第27項所述之下載節點,其中該下載節點自第j個節點下載該下載檔案Fj 的該下載頻寬等於該分佈下載頻寬Dj
  32. 如申請專利範圍第31項所述之下載節點,其中該下載節點自第j個節點下載該下載檔案Fj 的該下載頻寬等於該分佈下載頻寬Dj 減去一正保護值。
  33. 如申請專利範圍第31項所述之下載節點,其中該下載節點自第j個節點下載該下載檔案Fj 的該下載頻寬為該分佈下載頻寬Dj 與該第j個節點之一可用之上傳頻寬中最小者。
  34. 一種同儕系統,包括:多個節點,該些節點包括一第i個節點與第j個節點,其中:該第j個節點包括一第一通信單元以及一第一控制器,該第一通信單元組態以上傳多個上傳檔案給與該第j個節點相連的節點;該第i個節點包括一第二通信單元以及一第二控制器,該第二通信單元組態以自與該第i個節點相連的節點下載多個下載檔案,其中該些上傳檔案包括上傳給該第i個節點之上傳檔案Fij ,該些下載檔案包括自該第j個節點所下載之下載檔案Fij ,且該上傳檔案Fij 為該下載檔案Fij ;該第一控制器經組態以根據該些上傳檔案之多個到達截止時間與一目前傳輸時間的多個時間差的至少其中之一與 該些上傳檔案之多個檔案大小的至少其中之一來決定該上傳檔案Fij 的一分佈上傳頻寬Uij ;該第二控制器經組態以根據該些下載檔案之多個到達截止時間與該目前傳輸時間的多個時間差的至少其中之一與該些下載檔案之多個檔案大小的至少其中之一來決定該下載檔案Fij 的一分佈下載頻寬Dij ;以及該第一控制器更經組態以根據該上傳檔案Fij 之該分佈上傳頻寬Uij 與該下載檔案Fij 之該分佈下載頻寬Dij 中之較小者來配置由該第j個節點上傳至該第i個節點之該上傳檔案Fij 的一上傳頻寬,其中第j個節點可使用的全部上傳頻寬UBW為理想的全部上傳頻寬UR乘上一個常數μ,亦即UBW=UR×μ,其中常數μ介於0至1,且μ是一個估計值或者是使用者所預設的值,自第j個節點上傳至第i個節點的該上傳檔案Fij 的該分佈上傳頻寬Uij 會根據其上傳權重Ci 而被計算,其中該分佈上傳頻寬Uij 是第j個節點可使用的全部上傳頻寬UBW乘上上傳權重Ci ,亦即Uij =UBW×Ci ,其中第i個節點可使用的全部下載頻寬DBW為理想的全部下載頻寬DR乘上一個常數μ,亦即DBW=DR×μ,自第j個節點下載至第i個節點的該下載檔案Fij 的該分佈下載頻寬Dij 會根據其下載權重Cj 而被計算,其中該分佈下載頻寬Dij 是第i個節點可使用的全部下載頻寬DBW乘上下載權重Cj ,亦即Dij =DBW×Cj
  35. 如申請專利範圍第34項所述之同儕系統,其中該 上傳檔案Fij 的該上傳權重Ci 是根據該些上傳檔案之該些到達截止時間與該目前傳輸時間的該些時間差的至少其中之一與該些上傳檔案之該些檔案大小的至少其中之一來決定,且該上傳檔案Fij 的該分佈上傳頻寬Uij 是根據該上傳權重來決定;該下載檔案Fij 的該下載權重Cj 是根據該些下載檔案之該些到達截止時間與該目前傳輸時間的該些時間差的至少其中之一與該些下載檔案之該些檔案大小的至少其中之一決定,且該下載檔案Fij 的該分佈下載頻寬Dij 是根據該下載權重Cj 來決定。
  36. 如申請專利範圍第34項所述之同儕系統,其中該分佈上傳頻寬Uij 是根據該些上傳檔案之該些到達截止時間與該目前傳輸時間的該些時間差的全部與該些上傳檔案之該些檔案大小的全部來決定,且該分佈下載頻寬Dij 是根據該些下載檔案之該些下載截止時間與該目前傳輸時間的該些時間差的全部與該些下載檔案之該些檔案大小的全部來決定。
  37. 如申請專利範圍第36項所述之同儕系統,其中該些上傳檔案的多個優先權是根據該些上傳檔案之該些到達截止時間與該目前傳輸時間的該些時間差來決定,該上傳檔案Fij 的該上傳權重Ci 是根據該些上傳檔案的該些優先權與該些上傳檔案的該些檔案大小來決定,且該上傳檔案Fij 的該分佈上傳頻寬Uij 是根據該上傳權重Ci 來決定;該些下載檔案的多個優先權是根據該些下載檔案之該些到達截止時間與該目前傳輸時間的該些時間差來決定;該下載檔案Fij 的該下載權重Cj 是根據該些下載檔案的該些優先權與該些下載檔案的該些 檔案大小來決定,且該下載檔案Fij 的該分佈下載頻寬Dij 是根據該下載權重Cj 來決定。
  38. 如申請專利範圍第34項所述之同儕系統,其中該上傳檔案Fij 之一備選上傳頻寬為該上傳檔案Fij 之該分佈上傳頻寬Uij 與該下載檔案Fij 之該分佈下載頻寬Dij 中之較小者,一殘餘上傳頻寬是根據該些上傳檔案之該些備選上傳頻寬計算;若該殘餘上傳頻寬大於0,則該些上傳檔案之該些備選上傳頻寬被重新調整;若該殘餘上傳頻寬未大於0,則由該第j個節點上傳至該第i個節點之該上傳檔案Fij 的該上傳頻寬是根據該上傳檔案Fij 的該備選上傳頻寬來配置。
TW99100078A 2009-09-18 2010-01-05 同儕資料傳輸的排程方法及其節點與系統 TWI405440B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/795,630 US20110072143A1 (en) 2009-09-18 2010-06-07 Scheduling method for peer-to-peer data transmission and node and system using the same

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US24353709P 2009-09-18 2009-09-18

Publications (2)

Publication Number Publication Date
TW201112689A TW201112689A (en) 2011-04-01
TWI405440B true TWI405440B (zh) 2013-08-11

Family

ID=43866616

Family Applications (1)

Application Number Title Priority Date Filing Date
TW99100078A TWI405440B (zh) 2009-09-18 2010-01-05 同儕資料傳輸的排程方法及其節點與系統

Country Status (2)

Country Link
CN (1) CN102025764A (zh)
TW (1) TWI405440B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9699236B2 (en) * 2013-12-17 2017-07-04 At&T Intellectual Property I, L.P. System and method of adaptive bit-rate streaming

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060184688A1 (en) * 2005-02-17 2006-08-17 Nec Laboratories America, Inc. System and Method for Parallel Indirect Streaming of Stored Media from Multiple Sources
US20060190615A1 (en) * 2005-01-21 2006-08-24 Panwar Shivendra S On demand peer-to-peer video streaming with multiple description coding
US20070025363A1 (en) * 2005-07-29 2007-02-01 Roxbeam Media Network Corp. Distributed system for delivery of information via a digital network
US20080037527A1 (en) * 2006-07-27 2008-02-14 The Hong Kong University Of Science And Technology Peer-to-Peer Interactive Media-on-Demand
TW200810456A (en) * 2006-06-21 2008-02-16 Qualcomm Inc Wireless resource allocation methods and apparatus
US7500010B2 (en) * 2005-04-07 2009-03-03 Jeffrey Paul Harrang Adaptive file delivery system and method
TW200913603A (en) * 2007-07-10 2009-03-16 Qualcomm Inc Methods and apparatus for data exchange in peer to peer communications

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20060190615A1 (en) * 2005-01-21 2006-08-24 Panwar Shivendra S On demand peer-to-peer video streaming with multiple description coding
US20060184688A1 (en) * 2005-02-17 2006-08-17 Nec Laboratories America, Inc. System and Method for Parallel Indirect Streaming of Stored Media from Multiple Sources
US7500010B2 (en) * 2005-04-07 2009-03-03 Jeffrey Paul Harrang Adaptive file delivery system and method
US20070025363A1 (en) * 2005-07-29 2007-02-01 Roxbeam Media Network Corp. Distributed system for delivery of information via a digital network
TW200810456A (en) * 2006-06-21 2008-02-16 Qualcomm Inc Wireless resource allocation methods and apparatus
US20080037527A1 (en) * 2006-07-27 2008-02-14 The Hong Kong University Of Science And Technology Peer-to-Peer Interactive Media-on-Demand
TW200913603A (en) * 2007-07-10 2009-03-16 Qualcomm Inc Methods and apparatus for data exchange in peer to peer communications

Also Published As

Publication number Publication date
CN102025764A (zh) 2011-04-20
TW201112689A (en) 2011-04-01

Similar Documents

Publication Publication Date Title
EP1427170B1 (en) Peer-to-Peer content broadcast method
JP5058468B2 (ja) ストリーミングメディアの消去耐性符号化のための方法、該方法を実行するコンピュータ実行可能命令を記録した媒体、及びシステム
KR101159332B1 (ko) 확장가능한 미디어의 분산형 스트리밍을 위한 시스템 및방법
JP5223480B2 (ja) コンテンツ配信方法及び通信端末装置
US9712408B2 (en) Bandwidth management in a content distribution network
KR101183430B1 (ko) 피어-투-피어 네트워크에서의 수신자 구동형 스트리밍을위한 시스템 및 방법
US20080263130A1 (en) Apparatus, system and method of digital content distribution
US20140089998A1 (en) Dynamic Optimization of Video Content Distribution
JP6523447B2 (ja) 分散型コンテンツ配信ネットワークにおけるブロードキャスト送信中の適応ビットレート
CN101741884A (zh) 一种分布式存储方法和装置
CN104735044A (zh) 一种流媒体直播方法及系统
JP2012520004A (ja) ピアツーピアネットワークにおける優先順位付けのための方法及び装置
WO2011157295A1 (en) Improved peer-to-peer system
CN101888403B (zh) 存储和分发电子内容的方法和系统
JP5314605B2 (ja) コンテンツ配信システムと方法およびプログラム
TWI405440B (zh) 同儕資料傳輸的排程方法及其節點與系統
Pussep Peer-assisted video-on-demand: cost reduction and performance enhancement for users, overlay providers, and network operators
JP5229287B2 (ja) カラオケネットワークシステム、集中管理装置
Ketmaneechairat et al. Smart buffer management for different start video broadcasting
JP5206719B2 (ja) カラオケネットワークシステム及び集中管理装置
Shah et al. Performance Comparison of Chunk and Peer Scheduling Algorithms of Peer-to-Peer Streaming Systems
Janakiraman et al. Efficient and flexible parallel retrieval using priority encoded transmission
Chiu A hybrid P2P pre-release distribution framework for flash crowd avoidance in P2P video on demand streaming
Fu et al. Design and implementation of a service oriented architecture for peer-assisted video-on-demand
Cahill et al. Resource management in a shared infrastructure video CDN