[go: up one dir, main page]

TW200835270A - Method of supplying streams of data - Google Patents

Method of supplying streams of data Download PDF

Info

Publication number
TW200835270A
TW200835270A TW096139478A TW96139478A TW200835270A TW 200835270 A TW200835270 A TW 200835270A TW 096139478 A TW096139478 A TW 096139478A TW 96139478 A TW96139478 A TW 96139478A TW 200835270 A TW200835270 A TW 200835270A
Authority
TW
Taiwan
Prior art keywords
data
supply
user device
nodes
subset
Prior art date
Application number
TW096139478A
Other languages
Chinese (zh)
Inventor
Martijn Boekhorst
Original Assignee
Joost N V
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 Joost N V filed Critical Joost N V
Publication of TW200835270A publication Critical patent/TW200835270A/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1001Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
    • H04L67/1004Server selection for load balancing
    • H04L67/1008Server selection for load balancing based on parameters of servers, e.g. available memory or workload
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1061Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
    • H04L67/1068Discovery involving direct consultation or announcement among potential requesting and potential source peers

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

There is disclosed a method of supplying streams of data (60) via a data communication network (10) to a user apparatus (50). The data communication network (10 20) includes data supply nodes (S1 to S8) distributed therein. The streams of data (60) correspond to data blocks stored amongst the data supply nodes (S1 to S6). The method includes steps of: (a) sending into the network (10, 20) requests (610) for determining a distribution of the data blocks amongst the data supply nodes (S1 to S6); (b) receiving responses (610) generated in response to receipt of the requests, the responses being operable to convey information indicative of the distribution; (c) generating quota data (QCD) for a subset of the data supply nodes (S1 to S6) for use in supplying the data blocks, the quota data including instructions to supply to the user apparatus (50) the data blocks from the subset of data supply nodes (S1 to S6) at least partially in proportion to the distribution; (d) communicating the quota data to the subset of data supply nodes for instructing the subset of data supply nodes to supply their respective data blocks as specified in said quota data; and (e) receiving the requested data blocks at the user apparatus (50) for user (670) consumption thereat.

Description

200835270 九、發明說明: 【發明所屬技術領域;j 發明領域 本發明係有關一些可經由數據通訊網路供應一個或多 5個資料串流給使用者之方法,舉例而言,其係有關經由網 際網路以端對端之方式供應資料串流給使用者之電視顯示 裝置的方法。此外,本發明亦關切到可在電腦硬體上面執 行而實現本發明之軟體。此外,本發明亦關切到一些在運 作上可執行該等方法之網路和系統。 10 【先前技術】 發明背景 當代電視廣播係屬眾所周知,以及係涉及到在超高頻 (UHF)下之載波信號上面或經由一個或多個在極高頻(sjiF) 下之衛生來傳輸節目内容信號。晚近,經由光纖通訊鏈路 15傳達電視服務之設備,亦知名為,,有線電視”,已變得愈發 曰及。更晚近的是,已有經由行動電話…亦即蜂巢式電話_ 的電視服務被提議,以及已有原型之形式被展示出。此外, 運動圖像和動畫,已知可由網際網路網站來提供,舉例而 言,使用類似可在使用者電腦硬體上面執行之“Qukktime” 20等當代軟體。 在使用類似網際網路等資料網路來提供即時視訊時, 會遭遇到的-項技術性問題是,自中央伺服器供應視訊資 料串流至使用者之可信度,亦即自中央伺服器來源至使用 者之串机視成資料。此種可信度,亦知名為“服務品質” 5 200835270 (QoS) ’在類似網際網路等網路中,經常是很難被確保,彼 等在響應通過其中之即時資料交通負載的矸用資料串流量 能力方面,係有潛在可能會遭遇到廣泛之變動。雖然使用 者裝置中類似資料緩衝器之特徵,可被用來至少部份地補 5侦供應給使用者之資料串流中的變動或中斷,此類使用者 裝置緩衝器,係無法應付該等中央伺服器意想不到的失誤 或不可用性。結果’藉由資料串流自中央伺服器經由類似 網際網路等數據通訊網路供應電視服務給使用者裝置,尚 未廣泛地成為可能,或者尚未被發現可完全可靠地運作。 1〇 在此因而引發出一項技術性問題,本發明正為其尋求 面對解決,使在經由類似網際網路等易蒙受資料供應能力 方面之暫變動的通訊網路,提供視訊或類似節目内容 時,能提昇資料串流供應之可信度。 t發明内容】 15 發明概要 本發明之目的旨在提供一種供應資料串流之方法,其 能容許更可靠地提供資料串流,而不需要直接自一個中央 來源提供資料串流。 依據本發明之第一特徵,其中係提供有一種方法,其 20 可經由一條數據通訊網路,供應一個或多個資料串流,給 一個使用者裝置,該數據通訊網路,係包含有多數分佈其 中之資料供應節點,該等一個或多個資料串流,係對應於 一個或多個儲存在該等資料供應節點間之資料區塊,此種 方法包含之步驟有: 6 200835270 欠⑻將有關用以判定該等資料供應節點間的一個或多個 貧料區塊之分佈的一個或多個請求傳送進該網路内; ⑻在&日才間間隔内,接收一個或多個響應該等一個 或夕個明求之接收所產生的回應,此等一個或多個回應, 5在運作上可傳達用以指示該種分佈之資訊; ⑷產生用以供應該等_個或多個資料區塊所使用之資 料供應節點的至少-個子集有關的限額資料,此種限額資 料(QCD)係包含有一些指令,彼等是以上述分佈之一函數, 將來自該等資料供應節點而為該項之子集的一個或多個資 10 料區塊,供應給該使用者裝置; (d) 將該限額資料傳達給該資料供應節點之子集,藉以 下達指令給該資料供應節點,使供應一個或多個各自如該 限額資料(QCD)中所指明的資料區塊;以及 (e) 在該使用者裝置處,接收該等一個或多個請求之資 15 料區塊,以供該處之使用者消費。 本發明之優點在於,資料之供應能容許更可靠,因為 該等一個或多個資料供應節點之供應能力已被納入考慮。 可選擇的是,在此方法中,該子集係包含該網路的所 有資料供應節點。然而,該子集更常見的是包含該網路之 2〇 部份資料供應節點。當該等一個或多個資料區塊廣泛分佈 在該網路内時,經常引發出的一種情況是,其中有更多的 資料供應節點,能夠供應需要被該使用者裝置援用的一個 或多個資料區塊。 可選擇的是,在此方法中,該函數係有關供應來自該 7 200835270 等資料供應節點至少部份與該項分佈成比例之子集的〜個 - 或多個資料區塊。此種比例式供應之範例,係例示在下文 、之表2和3内。 可選擇的是,此種方法包含有的一個步驟是,在兮躜 5額資料中,納入該等一個或多個資料區塊要在其中供應^ 時間序列的指示符,該時間序列係具有該等資料供應節= , 冑應彼等供應該等—個或多個資料區塊之能力而以頻率載 馨 明的子集。納入此種時間序列,有助於確保該等資料區塊, 纟使用者展示所需之順序中被接收,藉以避免採用大資料 10雜ϋ及執行相當多的資料重新湖和處置之必要性。 彳選擇的是,此種方法包含有的—個步驟是,對每個 貪料供應即點之子集,同樣傳達該限額資料,而使該子率 ㈣每师料供應節點,亦可接_财_請求供應該 #-個或多個資料區塊给該使歸裝置之f料供應節點的 -15其他子集有關之資訊。將該限額資料分佈至所有潛在可能 • 料到之資料供應節點所具有的一項優點是,該資訊係分 佈在該等供應節點之間,以致該等供應節點可知曉一個彼 等在八中被要求供應彼等的一個或多個被指明之資料區塊 的時段。 20 士可選擇的是’在該方法中,該時間序列可狀-個起 4等個或夕個資料區塊,係、自其開始要傳送給 該使用者裳置,其中,該等資料供應節點之子集,係可運 作使相互獨立地相對該起始時間而同步化,以及該等資料 供應節點之子集,係可運 磲作使大體上在一些如該限額資料 200835270 中所指明相對於該起始時間之時間下供應彼等在該限額資 料中所指明的-個或多個資料區塊。該時間序列係有助於 確保,該等一個或多個資料供應節點,係就彼等給使用者 裝置之資料區塊的供應,而大體上相互被同步化。 5 更可選擇的是,在該方法中,該資料供應節點之子集, 係包含有如該限額資料中所指明範圍為3至1〇之資料供應 節點。此種範圍係代表一個在資料區塊供應給使用者裝置 之可信度與使資料控制前置處理保持至該網路内可被管理 的程度之間的一個最佳之折衷選擇。 10 可選擇的是,在該方法中,該等一個或多個資料封包, 係以几餘性就以下的至少一個加以編碼: (e)資料漏失和/或清除錯誤有關之補償或修正;和 ⑴資料錯誤有關之修正。。 此種冗餘性之優點是,其可減輕對使用者裝置之資料 15傳輸期間要在資料部分漏失之事件中重新傳送資料區塊有 關的請求之需要。 更可選擇的是,在該方法中,該等一個或多個資料區 塊,係在該資料供應節點之子集處被編碼,以及繼而係在 該使用者裝置處被解碼。該等資料供應節點處之編碼,需 20要的電腦計算努力係相當少,卻使所需之電腦計算散佈在 該網路中。 更可選擇的是,在該方法中,該等一個或多個資料區 塊,係被里德所羅門(Reed-S〇k>m〇n)編碼,以及該使用者裝 置在運作上’可對此使用者裝置處接收到的一個或多個資 9 200835270 料區塊,應用里德所羅門解碼。此種編碼和 現在實際實現本發明時係特別適用。然而,一些替= 之編碼和解碼,係可被選擇加以採用。 曰4 更可遂擇的是,在該方法Φ 万法中錢用者U係包含有 以下的至少一個有關之資料緩衝器: ⑻緩衝儲存來自該等資料供應節點之子集的—個或多 個資料區塊之供應速率中的變動;以及 / 10 ⑼在該資料供應節點子集可運作而脫離-個如該限額 資料中所才曰明之資料區塊供應的序列之事件中,重4丁接收 之貧料區塊的順序。 可選擇的是,在該方法中,該使用者裝置係可運作而 呈現: (g) —個資料供應中斷訊息給該使用者;和/或 (h) 在違限額資料(QCD)中所指明的一個或多個請求之 15 資料區塊,未能按照該限額資料適時在該使用者裳置處被 接收的事件中,將得自替代性資料區塊的節目内容呈現給 該使用者。 更可選擇的是,在該方法中,該使用者裝置,係可運 作而在該事件中傳送一個警告訊息給該數據通訊網路,該 20 警告訊息係可運作而在該網路中提示一個或多個搜尋,藉 以識別一個或多個替代性資料供應節點,彼等可提供與該 使用者裝置處未被可靠地接收到的相對應之資料區塊。 更可選擇的是,在該方法中,該中斷訊息和/或對應 於該替代性資料區塊的節目内容,會呈現給該使用者,直 200835270 至該替代性資料供應節點,可運作來供應該等迄今未被可 靠地接收到之資料區塊為止。 可選擇的是,在該方法中,該數據通訊網路,係經由 網際網路,至少部份地實現該等對應於電視型節目内容的 5 10 15 20 一個或多個資料區塊,以及該使用者裝置係對應於一個電 視型之顯示裝置。 可選擇的是,在該方法中,該等一個或多個資料區塊, 係對應於該使用者經由使用者裝置給該數據通訊網路所執 行之節目内容有關的請求。 可選擇的是,在該方法中,該等資料供應節點中所儲 存的-個或多個資料區塊,係事先以端對端之方式傳播给 該資料供應節點。 更可選擇的是,在該方法中,該等一個或多個資料區 塊,係儲存在該貧料通訊網路之資料供應節點中的多重 ^内。此等多重備份在原有之特定資料供應節點未能供應 :之特定資料區塊的事件中需要替代性㈣供 传 有優勢的。 恭 依據本發明之第二特徵,其中 來與數據通訊網路-起運作之使二= 皮適配 執行-個依據本發明之第—特徵的方法。 彳己置來 依據本發明之第三特徵,其中係提供 其係包含有至少一個使用者裝二= 作上可供應-個或多個資料輯给該使 =在運 訊網路’該等—個或多個資料區塊,係包含:節目^通 11 200835270 其中,該系統係被配置來執行一個依據本發明之第一特徵 的方法。 依據本發明之第四特徵,其中係提供有一種端對端數 位電視系統,其係包含有至少一個電視型使用者裝置,和 5 —條至少部份立基於網際網路之數據通訊網路,該系统係 可運作來供應一個或多個資料區塊給該使用者裝置,該等 一個或多個資料區塊,係包含有節目内容,其中,該系統 係被配置來執行_個依據本發明之第—特徵的方法。 依據本發明之第五特徵,其中係提供有一種記錄在一 10 個資料#驊U t : 上面之軟體產品,此種軟體產品係可在電腦計 更體上面執行,藉以實現一個依據本發明之第一特徵的 方法。 理應瞭解的是,本發明之特徵能容許結合在任何一種 、且口中’而不違離本發明如附隨之申請專利範圍所界定的 15 界定範圍。 圖式間單說明 本♦明之實施例,如今將參照以下之繪圖,僅藉由範 例來加以說明,其中: 第1圖係〜個可依據本發明而運作之端對端資料供應 20網路的例示圖; 第2圖係第1圖之網路中所傳達之資料串流、資料串流 、、’、貝料包、資料封包、和資料段之階層的例示圖; 固係弟1圖之網路中所執行之編碼和解碼的例示 圖; 12 200835270 弟4园係種用以提供資料串流給第1圖之網路的使用 者裝置之方法的例示圖;而 第5圖則係一種用以選擇第1圖之網路中的資料供應節 點使解決可變節點性能、節點漏失、和節點替代的方法之 5 進一步例示圖。 在所附諸圖中,所納入之數字係為配合下文對本發明 之實施例的說明來識別特徵。所納入之數字,在空間上位 &彼等相聯結之特徵内時係加有底線。此外,該等未加底 $時的數係以可朗該等數字相聯結之特徵的線段來 10連結。此外’彼等數字在被用來指示一個完整組件部分或 系統時係以箭頭來連接。 【實施方式;j 較佳實施例之詳細說明 概觀而言,本發明係有關經由數據通訊網路供應一個 15或多個資料串流給使用者裝置。雖非受限於此,本發明係 與用以經由網際網路提供數位電視型服務給一些被配置來 壬現此種電視型服務之使用者裝置的技術性問題相聯結。 在下文更詳細闡明之本發明的一個實施例中,一些能容許 形成資料串流之資料區塊,係以間接端對端之方式,使傳 2〇播至一些分佈在該網際網路或類似形式之數據通訊網路内 的中間供應節點,以及該等資料區塊繼而係自該等供應節 點供應至該使用者裝置,藉以提供一個前述之電視型服 務。此種提供資料區塊給該使用者裝置,係汲於解決一些 涉及直接來自中央伺服器之資料流的習見有線電視系統中 13 200835270 遭遇到的問題之方法;本發明係關切-些中央伺服器,彼 等可以前料制之方式,提供㈣區塊給鮮供應節 點,以及可因而克服使資料即時直接串流至該使用者裳置 之需要。然而,其中引發的—項為本發明沒於解決之問題 是,前述之供應節點,係有潛在可能具有使得在維持服務 品質下組織供應給該使用者裝置之資料區塊,成為一項纸 在可能之複_技術性問題。本發於解決此種複雜的 技術性問題,其係藉由執行如下之步驟順序: 10 15 20 步驟1: -個使用者會識別為此使用者想消費之節目内 容,以及會指示-個相聯結之使用者裝置,而傳送一個有 關X$目I之第明求n’給_個類似網際網路等數 據通訊網路的一個參照節點;此參照節點係方便地稱作_ 個“後端'然而,該參照節點可選擇地非必然需要為該後 端,而係可為被特別指定來響應使用者有關節目内容之詢 問的節點。該參照節點可響應該第—請求訊息,而傳送一 個第-回應訊息給該使用者裝置。其中,該第 , 係包含有構成該節目内容之資料區塊有關的資訊^資 料區塊係已有觀事先以料端之方式傳達於該數據通訊 ^路内。藉由“端對端之方式”,該參照節點係無法控制該 ^ 網路内之資料區塊的增生和儲存部位;該參照節點因 ^係無此力在該第-回應訊息中’提供用以指示所需之資 =塊和彼等在該數據通訊網路内之對應儲存部位兩者的 資讯,給該使用者裳置。 步抑在接收到上述包含構成該節目内容之資料區段 14 200835270 有關的資訊之第一回應訊息時,該使用者裝置可運作來傳 送一個有關該等資料區塊之第二請求訊息,給該數據通訊 網路之供應節點。該等供應節點可響應該第二請求訊息, 而傳送一個用以指示彼等能供應者為何者資料區塊之第二 5回應汛息,給該使用者裝置,連帶彼等供應此種資料給它 的容量。舉例而言,某一定之高速大能力資料節點,係可 - 提供許多的資料區塊,而其他低速度小能力節點,係僅可 _ 提供相當少的資料區塊。該使用者裝置在運作上,可在傳 运该第二請求訊息之後,等待一段被界定之等待期間,以 10便接收來自該等供應節點之回應。就某些受歡迎類型之性 質的節目内容而言,一些與彼等相對應之資料區塊,有潛 在了此以5¾對端之方式廣泛傳播於該網路内,以致該使用 . 者裝置,有潛在可能必須等待相對長的一段時期接收來自 . 該網路的所有可供應該等資料區塊給該使用者裝置之供應 ' 15 ¥點的回應。換言之,為提供—個回應服務給該使用者, • 較用者裳置,係配置使等待一段被界定之等待期間,其 係^足夠的期間供使用者裝置擁有來自充份之供應節點的 正常接收之回應,藉以確保能供應呈現上述希望之節目内 容所需的所有資料區塊給該使用者。 20、㈣3:在接收到該第二回應訊息時,舉例而言,在々 述之等待時期結束時,該使用者裝置便會執行—項計曾, 其可在—種將該等供應節點之能力納入考 、:斤, 配該等資料區塊之供應,藉以在一種適時二:=之: 式中,提供該等資料區塊給該使用者裝置,其並不會涉及 15 200835270 該使用者節點有在其緩衝器内儲存大量之資料以及重新組 織此種在攙雜之順序中接收到的資料區塊之序列的需要。 此種貝料區塊供應之分配,係被記錄在限額資料中,後者 接著會在-個第三請求訊息中,傳送給該使用者裝置所選 5供應該等希望之資料區塊的供應節點。可選擇的是,該限 額貝料可界疋出貧料區塊供應當下應開始的一個絕對時 間亦即個起始時間t〇,和對應之資料區塊Dn在其時需 要供應至該使用者裝置的一些相對於上述起始時剛〇之時 間tn,η係個用以界定一個資料區塊d之序列的第^個資料 10區塊之部分的整數。該等供應節點全係相互地參照一個整 體數據通訊網路時間時鐘。 步驟4·在接收到該第三請求訊息時,該等資料供應節 點便會等候,直至該網路時間時鐘‘『,對應於資料區塊供 應當下必關始之起始時㈣為止,以及接著在該網路時間 15時鐘tref隨後對應於t〇+tn_,傳送彼等在該第三請求訊息内 所傳達之限額資料中受到指示要供應的資料區塊^。:等 被請求之資料區塊Dn,實質上係以該使用者要呈現之順序 在該使用者裝置處被接收;然而,該等資料區塊^,偶而 會以-個攙雜之順序在該使用者裝置處被接收,以及需要 20依據每個資料區塊仏中所包含之序號來重排順序。此夕而卜, 該等資料區塊Dn,有利的是在彼等需要呈現給該使用者以 供消費之前的-段短時期内被接收。該使用者裝置内的大 容量緩衝器有關之需要因而可使避免,以及在要展示給該 使用者的即目内容被執行之前,該使用者不必持續等待接 16 200835270 收所有之資料區塊。舉例而言,該使用者裝置可運作使在 較遲之貧料區塊正在該使用者裝置被接收之際,同時將較 早資料區塊之節目内容呈現給該使用者。 在前文中,本發明係概觀地加以說明。如今將更詳細 5 地說明本發明之實施例。 參照第1圖,其中係顯示一個以10泛指之數據通訊網 路;此網路10係可選擇地至少部份經由當代之網際網路來 加以實現。該網路10係包含有幾個資料供應節點31至38, 彼等係可運作而以端對端之方式作用,以及可形成一個以 H) 20指明之端對端網路。彼等資料區塊Dn,係傳播自一個中 央來源30,舉例而言,自一個或多個與該端對端網路如相 通吼之中央伺服器;若有需要,此種中央來源3〇,本身便 可作用為一個資料供應節點,其可在一個給定之資料區塊 尚未在該網路20内傳播以及已然被使用者請求之事件中, 15 以一種類似之方式,將資料區塊提供給該等資料供應 節點S1至S8。響應前述内含該限額資料之第三請求訊息的 接收,該等資料供應節點81至86,可運作來將彼等各自之 資料區塊,舉例而言,如箭頭4〇所指者,提供給一個以5〇 所指之使用者裝置。該等供應至上述使用者裝置5〇之資料 20區塊Dn,構成了 一個以60泛指之資料串流。該等資料供應 節點S7和S8,亦有潛力可供應資料區塊Dn,但或由於彼等 並未在前述之等待時期内回應,或由於該等資料供應節點 S1至S6已足以確保能供應所希望之資料區塊Dn給該使用 者’而未被選定。 17 200835270 該使用者裝置50,係可容許以幾種不同之方式來實現。 舉例而言,該使用者裝置50,係可容許被實現為一部包括電 腦計算硬體和一個螢幕顯示器之個人電腦。或者,該使用者 裝置50,係可容許被實現為一個用以連接至當代電視裝置之 5 “黑箱’’,舉例而言,藉由式樣翻新或“外掛,,之裝置。 該資料串流60如今將參照第2圖加以更詳細之闡明。雖 然該資料串流60在前文中,係說明包含有資料區塊,其結 構係更加複雜。該資料串流60可包含有相當多的資料,舉 例而言,總數達數十億位元組。此外,該資料串流60在編 10 碼之前,係被細分為一些資料串流群組100,其中,每個資 料串流群組,有利的是包含有32 MB個資料;舉例而言, 該資料串流60係包含有:一個以110指明之“資料串流群組 〇”、一個以120指明之“資料串流群組16”、一個以130指明 之“資料串流群組32”、和一個以140指明之“資料串流群組 15 η”。每個資料串流群組110、120、130、140,係包含有數 個資料包,其中,每個資料包係包含有256什位元組之資 料;舉例而言,以220指明之“資料包31”,如所例示係包含 有:以200指明之“資料包16”、以210指明之“資料包17”、 和以220指明之“資料包31”。每個資料包200、210、220, 20 係進一步被細分為一些資料封包,其中,每個資料封包係 包含有64仟位元組之資料;舉例而言,以210指明之“資料 包Π”係包含有:以300指明之“資料封包17.1”、以310指明 之“資料封包17·2”、等等、以至以320指明之“資料封包 17.16”。此外,每個資料封包3〇〇、310、320,係進一步被 18 200835270 細分為-些各錢仟位纽大小之資料片段;舉例而言, 以M0指明之“資料封包17.2”係進—步被細分,其在該資料 串流6〇内之編郷式中時,係被一成以獅、4U)、420指 明的三则段。里德所羅門編碼程序最好被採用。 10 15 20 該等貢料片段,舉例而言,資料片段4()()、41()、42(), 係獨立地傳播於朗路_,舉例”,财在該端對端 祠路2〇内在運作中,當供應資料串流6G給該使用者裝置 〇才A等貝料片段是否在該使用者裝置5Q處成功地被接 收係個極小的事件:或者一個片段完全地到達 ,或者 其全然未到達。 誠如上文所闡明,每個資料片段係—個屬編碼之 輸出,舉例而言,里德所羅n(RS)解碼,其會造成編碼冗 餘性’但可容許資料遺漏在該使用者裝置观被修正。其 :類型之編碼係屬可行,其或替代選擇地或附加地考慮到 貝料校正。上述以31G指明且包含#64仟位元組之資料的預 先編碼之資料封包17·2,在編碼後係擴展成%仟位元組。 里仏所羅門編碼的—個有利性質是,在該使用者裝置50 =個對應之資料封包的三個編碼之片段,僅需要兩個 ^重建該資料封包;g此,該㈣者裝置5(),並不需要運 作來明求重新傳送—個編碼之資料封包,除非該資料封包 的3個片段中的2個,在該網路1〇中之傳輸期間已漏失。 _二網路1G之實際運作帽遭遇_1問題是,儘管 —個前述之編碼提供了 50%的冗餘性前置處理,三個^續 之解瑪的純片段漏失之機會係很顯著,亦即,在至該使 19 200835270 5200835270 IX. DESCRIPTION OF THE INVENTION: FIELD OF THE INVENTION The present invention relates to methods for supplying one or more data streams to a user via a data communication network, for example, via the Internet. A method of supplying data streams to a user's television display device in an end-to-end manner. Moreover, the present invention is also concerned with software that can be implemented on a computer hardware to implement the present invention. Moreover, the present invention is also concerned with networks and systems in which such methods can be implemented. 10 [Prior Art] BACKGROUND OF THE INVENTION Contemporary television broadcasting is well known and relates to the transmission of program content over carrier signals under ultra high frequency (UHF) or via one or more hygiene at very high frequencies (sjiF). signal. Recently, devices that communicate television services via fiber-optic communication link 15, also known as "cable television," have become more and more popular. More recently, there have been televisions via mobile phones... that is, cellular phones. Services are proposed and presented in the form of existing prototypes. In addition, moving images and animations are known to be available from Internet sites, for example, using "Qukktime" which can be executed on the user's computer hardware. 20. Contemporary software. When using a data network like the Internet to provide instant video, the technical problem encountered is the credibility of streaming video data from the central server to the user. That is, from the source of the central server to the user's string of sights. This credibility is also known as the "quality of service" 5 200835270 (QoS) 'In a network like the Internet, it is often difficult It is ensured that they are likely to experience wide-ranging changes in their ability to respond to the traffic flow through their immediate data traffic load. Although similar in user devices The characteristics of the data buffer can be used to at least partially compensate for changes or interruptions in the data stream supplied to the user. Such user device buffers are unable to cope with the unexpected effects of such central servers. Mistakes or unavailability. As a result, the provision of television services to user devices via data streams from a central server via a similar data network such as the Internet has not been widely possible or has not been discovered to operate fully reliably.因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而 因而The invention can improve the credibility of the data stream supply. t SUMMARY OF THE INVENTION 15 SUMMARY OF THE INVENTION The object of the present invention is to provide a method for supplying data streams, which can allow data streams to be provided more reliably without directly A central source provides a stream of data. According to a first feature of the invention, there is provided a method, 20 a data communication network for supplying one or more data streams to a user device, the data communication network comprising a plurality of data supply nodes distributed therein, the one or more data streams corresponding to one Or a plurality of data blocks stored between the data supply nodes, the method comprising the steps of: 6 200835270 owing (8) to determine the distribution of one or more poor blocks between the data supply nodes One or more requests are transmitted into the network; (8) receiving one or more responses in response to the receipt of the one or more requests in the & day interval, one or more In response, 5 may operationally communicate information indicative of the distribution; (4) generate quota data relating to at least a subset of the data provisioning nodes used to supply the one or more data blocks, Quota data (QCD) contains instructions that are used to supply one or more resources from the data supply nodes to a subset of the items in a function of the above distribution. The user device; (d) communicating the quota data to a subset of the data provisioning node, and providing the data provisioning node with the following instructions to supply one or more of the materials specified in the quota data (QCD) And (e) receiving, at the user device, the one or more requested resources for consumption by a user of the location. An advantage of the present invention is that the provision of data can be more reliable because the supply capabilities of the one or more data supply nodes have been taken into account. Alternatively, in this method, the subset contains all of the data supply nodes of the network. However, this subset is more common to include some of the data supply nodes of the network. When one or more of the data blocks are widely distributed within the network, a situation often arises in which there are more data supply nodes capable of supplying one or more that need to be invoked by the user device. Data block. Alternatively, in this method, the function is to supply ~- or more data blocks from a subset of the data supply nodes such as the 7200835270 that are at least partially proportional to the distribution of the item. Examples of such proportional supply are exemplified below, Tables 2 and 3. Alternatively, the method includes the step of including in the data of the one or more data blocks an indicator of the time series in which the time series is The data supply section = , a subset of the frequency of the supply of the one or more data blocks. The inclusion of such time series helps to ensure that the data blocks are received in the order required by the user to avoid the need to use large data and perform a considerable amount of data to re-lake and dispose of them.彳 The choice is that this method includes a step of providing a subset of the points for each greedy material, and also communicating the quota data, so that the sub-rate _Request to supply the #- or more data blocks to the information about the -15 other subsets of the device's f-supply node. Distributing the quota data to all potential sources of data supply nodes has the advantage that the information is distributed between the supply nodes so that the supply nodes can know that one of them is in the eight A period of time for which one or more of the specified data blocks are required to be supplied. 20 can choose to be 'in this method, the time series can be shaped from 4 or a day or a data block, from which the user should send it to the user, where the data is supplied. A subset of nodes operable to be synchronized independently of each other with respect to the start time, and a subset of the data provisioning nodes are operable substantially as indicated in the limit data 200835270 relative to the The one or more data blocks specified in the limit data are supplied at the time of the start time. The time series helps to ensure that the one or more data supply nodes are substantially synchronized with each other in relation to their supply of data blocks to the user device. 5 Optionally, in the method, the subset of the data supply nodes includes a data supply node having a range of 3 to 1 as specified in the quota data. This range represents an optimal compromise between the confidence that the data block is supplied to the user device and the extent to which the data control pre-processing is maintained to be manageable within the network. Optionally, in the method, the one or more data packets are encoded with at least one of the following: (e) compensation or correction related to data loss and/or clearing errors; (1) Amendments related to data errors. . The advantage of this redundancy is that it alleviates the need for retransmission of data block requests in the event of a missing portion of the data during transmission of the user device. More optionally, in the method, the one or more data blocks are encoded at a subset of the data supply nodes and then decoded at the user device. The coding at the data supply nodes requires a relatively small amount of computer computing effort, but allows the required computer computing to be spread across the network. Alternatively, in the method, the one or more data blocks are encoded by Reed-S〇k>m〇n, and the user device is operationally 'optional' One or more of the funds received at the user device 9 200835270 block, applied Reed Solomon decoding. Such coding and in the actual implementation of the present invention are particularly applicable. However, some encoding and decoding for = can be selected for adoption.曰4 More optionally, in the method Φ, the user U system contains at least one of the following data buffers: (8) buffering one or more of the subsets from the data supply nodes. a change in the supply rate of the data block; and / 10 (9) in the event that the subset of data provisioning nodes is operational and deviated from a sequence of data blocks as stipulated in the quota data, The order of the poor blocks. Optionally, in the method, the user device is operable to present: (g) a data supply interruption message to the user; and/or (h) specified in the violation limit data (QCD) The one or more requested 15 data blocks fail to present the program content obtained from the alternative data block to the user in the event that the quota data is received at the user's skirt in a timely manner. Alternatively, in the method, the user device is operable to transmit a warning message to the data communication network during the event, and the 20 warning message is operable to prompt one or Multiple searches to identify one or more alternative data provisioning nodes that can provide corresponding data blocks that are not reliably received at the user device. Alternatively, in the method, the interrupt message and/or the program content corresponding to the substitute data block are presented to the user, and the operating data supply node can be operated directly from the 200835270 to the alternative data supply node. It should wait until the data block has not been reliably received so far. Optionally, in the method, the data communication network implements, at least in part, the one or more data blocks corresponding to the television type program content via the Internet, and the using The device corresponds to a television type display device. Optionally, in the method, the one or more data blocks correspond to a request by the user to the program content executed by the data communication network via the user device. Alternatively, in the method, the one or more data blocks stored in the data supply nodes are transmitted to the data supply node in an end-to-end manner. More optionally, in the method, the one or more data blocks are stored in multiples of the data supply nodes of the poor communication network. These multiple backups need to be replaced in the event that the original data supply node fails to supply: the specific data block (4). According to a second feature of the present invention, the method of communicating with the data communication network is performed in accordance with the first feature of the present invention. According to the third feature of the present invention, the system provides that the system includes at least one user device, two devices, one or more data files, and the device network. One or more data blocks, including: program ^ 11 11 35 35 wherein the system is configured to perform a method in accordance with the first feature of the present invention. According to a fourth feature of the present invention, there is provided an end-to-end digital television system comprising at least one television-type user device, and at least a portion of an Internet-based data communication network. The system is operable to supply one or more data blocks to the user device, the one or more data blocks containing program content, wherein the system is configured to execute _ according to the present invention The method of the first feature. According to a fifth feature of the present invention, there is provided a software product recorded on a 10 data item, wherein the software product can be executed on a computer meter body to implement a method according to the present invention. The method of the first feature. It is to be understood that the features of the invention are to be construed as being limited to the scope of the invention as defined by the appended claims. The drawings illustrate the embodiments of the present invention, and will now be described by way of example only with reference to the following drawings, wherein: Figure 1 is an end-to-end data supply network 20 that can operate in accordance with the present invention. Example diagram; Figure 2 is an illustration of the data stream, data stream, ', shell packet, data packet, and data segment conveyed in the network of Figure 1; An illustration of the encoding and decoding performed in the network; 12 200835270 An illustration of a method for providing data streaming to a user device of the network of Figure 1; and Figure 5 is a A further illustration of a method for selecting a data provisioning node in the network of Figure 1 to address variable node performance, node loss, and node replacement. In the accompanying drawings, the figures incorporated are in the context of the description of the embodiments of the invention. The numbers included are added to the bottom line when they are within the characteristics of the space & In addition, the numbers that are not added to the bottom are linked by a line segment that is characterized by the number of such numbers. In addition, the numbers are connected by arrows when used to indicate a complete component part or system. [Embodiment] j Detailed Description of the Preferred Embodiment In summary, the present invention relates to supplying a 15 or more data streams to a user device via a data communication network. While not limiting, the present invention is coupled to the technical problem of providing digital television-type services over the Internet to a number of user devices configured to deliver such television-type services. In one embodiment of the invention, which is illustrated in more detail below, some of the data blocks that are capable of permitting the formation of data streams are transmitted indirectly to the Internet or similarly in an indirect end-to-end manner. The intermediate supply nodes within the form of the data communication network, and the data blocks, are then supplied from the supply nodes to the user device to provide a television service as described above. This method of providing a data block to the user device is a solution to the problems encountered in the video cable system of the 2008 cable system, which is related to the data stream directly from the central server; the present invention is concerned with some central servers. They can provide the (4) block to the fresh supply node in a pre-material system, and thus can overcome the need to immediately stream the data directly to the user. However, the item that is triggered is a problem that is not solved by the invention. The foregoing supply node has the potential to have a data block that makes the organization supply to the user device under the maintenance of service quality, and becomes a paper. Possible complex _ technical issues. The present invention addresses this complex technical problem by performing the following sequence of steps: 10 15 20 Step 1: - A user will identify the content of the program that the user wants to consume, and will indicate - a phase Linking the user device, and transmitting a reference node for the data communication network of the Internet, such as the Internet, is conveniently referred to as _ "back end" However, the reference node may optionally be a need for the backend, but may be a node that is specifically designated to respond to the user's query about the program content. The reference node may transmit a first in response to the first request message. - a response message to the user device, wherein the information is related to the information block constituting the content of the program, and the data block is transmitted in the data communication channel in advance by means of the material end By means of "end-to-end mode", the reference node cannot control the proliferation and storage location of the data block in the network; the reference node is provided in the first response message because the system does not have this force use The user is placed on the information indicating both the required resource = block and their corresponding storage locations in the data communication network. The step of receiving the data section 14 containing the content of the program is received. 200835270 The first response message of the information, the user device is operable to transmit a second request message for the data block to the supply node of the data communication network. The supply nodes are responsive to the second Requesting a message and transmitting a second 5 response message indicating the provider's data block to the user device, and providing them with the capacity to supply such information to it. For example, Certain high-speed and high-capacity data nodes can provide many data blocks, while other low-speed and small-capacity nodes can only provide relatively few data blocks. The user device is operational and can be transported. After the second request message, waiting for a defined waiting period to receive a response from the supply nodes at 10. For certain popular types of program content Some of the data blocks corresponding to them have the potential to spread widely within the network in such a way that the device is used, and it is possible to wait for a relatively long period of time to receive from. All of the network's available data blocks should be supplied to the user device with a '15 ¥ point response. In other words, to provide a response service to the user, • the user is set to wait for a period of time. During the defined waiting period, the system is sufficient for the user device to have a response to the normal reception from the sufficient supply node, thereby ensuring that all the data blocks required to present the desired program content are available to the user. 20, (4) 3: Upon receiving the second response message, for example, at the end of the waiting period of the description, the user device will execute the item, which may be in the supply node The ability to be included in the test, jin, with the supply of such data blocks, in a timely two: =: where the data blocks are provided to the user device, which does not involve 15 200835 270 The user node has the need to store a large amount of data in its buffer and to reorganize the sequence of such data blocks received in a noisy sequence. The allocation of such bedding block supply is recorded in the limit data, which in turn is transmitted to the user device for selecting 5 supply nodes for the desired data blocks in the third request message. . Alternatively, the limit beaker can be used to supply an absolute time, that is, a start time t〇, which should be started at the moment, and the corresponding data block Dn needs to be supplied to the user at that time. Some of the devices are integers relative to the start time tn, η is an integer that is used to define a portion of the data block 10 of the sequence of data blocks d. These supply nodes all refer to each other to an entire data communication network time clock. Step 4: Upon receiving the third request message, the data provisioning nodes will wait until the network time clock '', corresponding to the start of the current data block supply (fourth), and then At the network time, the 15 clock tref then corresponds to t〇+tn_, and the data blocks that are indicated to be supplied in the quota data conveyed by the third request message are transmitted. : The requested data block Dn is substantially received at the user device in the order in which the user is to be presented; however, the data blocks ^, occasionally, are used in a noisy order. The device is received, and the sequence 20 needs to be rearranged according to the sequence number contained in each data block. In the meantime, the data blocks Dn are advantageously received within a short period of time before they need to be presented to the user for consumption. The need for a bulk buffer within the user device can thus be avoided, and the user does not have to wait for all of the data blocks to be received until the desired content to be presented to the user is executed. For example, the user device is operable to present program content of an earlier data block to the user while the later poor block is being received by the user device. In the foregoing, the invention has been described broadly. Embodiments of the present invention will now be described in greater detail. Referring to Figure 1, there is shown a data communication network generally referred to as 10; this network 10 is optionally implemented at least in part via the contemporary Internet. The network 10 includes several data provisioning nodes 31 through 38 that operate in an end-to-end manner and form an end-to-end network designated by H) 20. The data blocks Dn are transmitted from a central source 30, for example, from one or more central servers that are in communication with the end-to-end network; if required, such central sources are 3 It can act as a data provisioning node that can provide data blocks in a similar manner to an event in which a given data block has not been propagated within the network 20 and has been requested by the user. The data is supplied to nodes S1 to S8. In response to receipt of the third request message containing the quota data, the data supply nodes 81 to 86 are operable to provide their respective data blocks, for example, as indicated by arrow 4 A user device indicated by 5 inches. The data block 20, which is supplied to the user device 5, constitutes a stream of data indexed by 60. The data supply nodes S7 and S8 also have the potential to supply the data block Dn, or because they have not responded within the aforementioned waiting period, or because the data supply nodes S1 to S6 are sufficient to ensure supply The desired data block Dn is given to the user's but not selected. 17 200835270 The user device 50 can be implemented in several different ways. For example, the user device 50 can be implemented as a personal computer including a computer computing hardware and a screen display. Alternatively, the user device 50 can be implemented as a "black box" for connection to a contemporary television device, for example, by means of a retrofit or "plug-in" device. This data stream 60 will now be explained in more detail with reference to Figure 2. Although the data stream 60 is in the foregoing, it is described that the data block is included, and the structure is more complicated. The data stream 60 can contain a significant amount of data, for example, a total of billions of bytes. In addition, the data stream 60 is subdivided into some data stream groups 100 before being coded 10, wherein each data stream group advantageously includes 32 MB data; for example, The data stream 60 includes: a "data stream group" indicated at 110, a "data stream group 16" indicated at 120, and a "data stream group 32" indicated at 130. And a "data stream group 15 η" indicated at 140. Each data stream group 110, 120, 130, 140 includes a plurality of data packages, wherein each data package contains data of 256 bits; for example, the data package indicated by 220 31", as exemplified, includes "package 16" indicated at 200, "package 17" indicated at 210, and "package 31" indicated at 220. Each data package 200, 210, 220, 20 is further subdivided into data packets, wherein each data packet contains 64 bytes of data; for example, the "package" specified by 210 The system includes: "data packet 17.1" indicated by 300, "data packet 172.0" indicated by 310, etc., and even "data packet 17.16" indicated by 320. In addition, each data packet 3〇〇, 310, 320 is further subdivided into 18 pieces of data size by the number of 2008 200827; for example, the “data packet 17.2” specified by M0 is Subdivided, when it is in the compilation of the data stream, it is divided into three segments specified by Lion, 4U) and 420. The Reed Solomon coding program is best used. 10 15 20 These tribute fragments, for example, data fragments 4()(), 41(), 42(), are independently propagated to Langlu_, for example, in the end-to-end road 2 In the inner operation, when the supply data stream 6G is given to the user device, whether the bedding segment such as A is successfully received at the user device 5Q is a very small event: or a segment arrives completely, or Not at all. As explained above, each piece of data is the output of a genus code, for example, Reed Solo n (RS) decoding, which causes coding redundancy 'but can allow data to be missed The user device view is modified. Its type of coding is feasible, or alternatively or additionally considers the bedding correction. The above-mentioned pre-coded data specified by 31G and containing #64仟-bit data The packet 17·2 is expanded into %仟 bytes after encoding. The advantageous property of the Solomon code is that in the user device 50 = three corresponding segments of the data packet, only two are needed. ^ Rebuild the data packet; g this, the (four) device 5 () There is no need to operate to explicitly retransmit the encoded data packet unless two of the three fragments of the data packet have been lost during the transmission in the network. _ The operation of the second network 1G The problem with the cap encounter _1 is that although the aforementioned code provides 50% redundant pre-processing, the chances of the pure segment missing of the three sequels are significant, that is, at 19 200835270 5

10 1510 15

用者衣置50之傳輪中的一個資f右讀組失敗,比“崎狀失敗” T“生n __之編碼在第3圖令,係插給嗲踹屬失。 思p“6 對端網路2G中所執行之里产所 羅門編碼,和該使用者穿晋 里仏所 聱垃版u 者衣置5G處所執行的對應之解碼。該荨、、扁碼之片段的某也部分 一丨刀之漏失,如所例示係可容使用輕置鱗被補償。在第3圖中,—個里 ^在以 功能係以5’㈣,以及一個對應之里德所羅門清 解碼功能係以指明。資料之漏失係以叉號“χ”註明。 «亥等資料供應節點處所發生之編碼,舉例而言,第1 圖中之資料供應節點S1至S6,係涉及將資料封包切割成一 些類似前述之資料片段的片段。結果,一個封包之所有片 段的總共大小,係等於彼等在編碼功能5〇〇之前的封包大 小。在該編碼功能500中的編碼之後,資料大小係藉由如第 2圖所例示附加32仟位元組之資料增加而擴展33%。該等解 碼之片段係經由該等網路10、20來傳輸,彼等有時會造成 如前述第3圖中之“X”所指的資料漏失。可選擇地,當該等 網路10、20在該網際網路中實現時,該等資料片段係使用 UDP資料串流來傳輸。雖然在前文中係闡明資料大小擴展 33%,理應瞭解的是,依據要被傳達之資料量與對資料漏 20失和/或資料毁損的耐受力之間所希望的權衡,其他百分 比之資料擴展係屬可能。此種權衡係與實現本發明所需之 通訊頻寬密切相關。 因此,使用傳統式具有確認/否定確認(ack/nack)重新 傳送之資料區塊傳輸的資料串流,能容許造成對該使用者 20 200835270 裝置50之資料串流遞送的次佳品質,和因而對該使用者之 節目内合展不的次佳品質。在對該使用者裝置刈之傳輪期 間漏失的資料封包,係需要自該等以資料供應節點SliS6 為例之資料供應節點重新傳送。在一個朝向該使用者裝置 5 50傳輸之資料封包與該使用者裝置__到傳輸期間漏 失的且在該使用者裝置5〇處絕不會被接收的封包之間的時 間間隔’在實務中之最壞的實際實況之情況中,係有潛在 可月b曰接近2秒。結果,一個輪回之請求,於該資料封包最 後在該使用者裝置50處成功地被接收到之前,係潛在可能 10會有2秒之停頓。此種停頓可藉由在該使用者裝置5〇中採用 則述之資料緩衝器以便緩衝儲存該資料串流6〇而使減輕。 然而,此種緩衝儲存會使得該使用者裝置5〇,在該使用者 切換節目頻道時,亦即請求一個要供應自上述數據網路2〇 之供應節點的替代選擇之資料串流時,對該使用者有一種 15顯得步調遲緩之趨向,亦即會呈現出等待時間,本發明尋 求至少能部份解決此種等待時間。 此外,當該等以資料供應節點81至86之資料供應節 點,各均未擁有足夠的資料供應頻寬來支援一個用以遞送 視矾和類似服務給該使用者之速率下的資料串流60時,進 2〇 步之技術性問題便會出現。為解決此種資料供應頻寬之 缺乏,幾個資料供應節點,舉例而言,第丨圖中所例示之供 應節點S1至S6,係被採用來配合供應該資料串流6〇 ;舉例 而言,每個資料供應節點S1至S6,舉例而言,被實現為多 數之飼服器,可遞送小部份,舉例而言,128仟位元組/秒, 21 200835270 適合數位影像光碟同等品質之大資料串流,舉例而言,i百 萬位元組/秒,給該使用者裝置50。然而,此種解決方案 S使知來自上述‘對端網路2〇之資料串流,對該使用者^ 置5〇而3,更難預防不分裂。此外,所引發的一個為本發 5明尋求解決的進一步問題是,若僅有該網路2〇之資料供應 節點S1至S6,被個別選擇來供應資料給該使用者裝置5〇, ^ 其中,每個魏定之資料供應節點S1至S6,係具有足夠的 能力提供資料來服務該使用者裝置5G,該網路2G之端對端 資料供應能力,很快便會變得被用盡,而僅留下具有剩下 10之平饧(modest)能力的供應節點。該網路10因而可運作使優 先於採用該網路20展現相對較大之資料供應能力的供應節 =而採用展現相對較小之資料供應能力的供應節點。卿 貝料供應節點S1至S6t之用法的此種定義,係於產生上述在 刚述之第三請求訊息中傳達給該端對端網路2〇的限額資料 -15 _ ’㈣使用者裝置鱗行-項計算㈣成。上述與該網 • 路1〇合作之使用者裝置50,亦可運作來在該限額資料中的 :個特定之資料供應節點變為不可得或者無法將其特定之 、貝料區塊供應進該資料串流6〇内以便在該使用者褒置%處 被接收的事件中,尋求該端對端網路20中的-個或多個替 20代選擇性資料供應節點。 今將參照第4圖進-步闡明上述依據本發明之網路^ 的運作。在第4圖中,該端對端網路2〇,係包含有前述之資 料供應節點smS8,加上以_指明之超節點。可選擇地、, 該等資料供應節點81至88中的一個或多個,亦可作用為此 22 200835270 種超節‘點;或者,該超節點_係與該資料供應節點㈣別 明顯有別。雖然第4圖中僅顯示有七個資料供應節點81至 S7 ’理應瞭解的是,超過七個資料供應節點 ,或者可選擇 地少於七個資料供應節點,可在該端對端網路2〇内呈活動 5性。每個超節點_,係與一個或多個資料供應節_以8 相聯結,以及係可運作來保持它的一個或多個相聯結之資 料供應郎點S1至S8内所儲存以前述之資料片段為例的資料The user's clothing set 50 in the pass of the fund f right reading group failed, than the "sakisaki failure" T "sheng n __ code in the third order, is inserted into the genus lost. thinking p "6 The Solomon code that is executed in the peer network 2G and the corresponding decoding performed by the user wearing the 5G location of the user. Some of the fragments of the 荨, and the flat code are also missing. If the example is used, it can be compensated by using the light scale. In Fig. 3, the _ is in the function system with 5' (four), and a corresponding Reed Solomon decoding function is indicated. The loss of data is indicated by the cross "χ". The encoding occurring at the data supply node such as Hai, for example, the data supply nodes S1 to S6 in Fig. 1 involves cutting the data packet into pieces similar to the aforementioned data fragments. As a result, the total size of all the segments of a packet is equal to the packet size before the encoding function 5〇〇. After encoding in the encoding function 500, the data size is expanded by 33% by the addition of 32 octets of data as illustrated in Figure 2. Fragments of such decoding are transmitted via the networks 10, 20, which sometimes cause loss of data as indicated by "X" in Figure 3 above. Alternatively, when the networks 10, 20 are implemented in the Internet, the pieces of data are transmitted using a UDP stream. Although the above section clarifies that the size of the data is expanded by 33%, it should be understood that there is a trade-off between the amount of information to be communicated and the tolerance to data loss and/or data corruption. Extensions are possible. This trade-off is closely related to the communication bandwidth required to implement the present invention. Thus, the use of a conventional data stream with a acknowledgment/negative acknowledgment (ack/nack) retransmission of the data block transport can tolerate sub-optimal quality of the data stream delivery to the user 20 200835270 device 50, and thus The sub-optimal quality of the user's program. The data packets lost during the transmission of the user device need to be retransmitted from the data supply node using the data supply node SliS6 as an example. The time interval between a data packet transmitted toward the user device 505 and a packet lost by the user device __ during transmission and never received at the user device 5 ' in practice In the worst case scenario, there is a potential for a month b曰 close to 2 seconds. As a result, a recurrent request is likely to have a 2 second pause before the data packet is finally successfully received at the user device 50. Such pauses can be mitigated by employing the data buffer described in the user device 5 to buffer the data stream. However, such buffer storage causes the user device to switch to the user stream when the user switches the program channel, that is, when requesting an alternative stream of data to be supplied from the supply node of the data network 2 The user has a tendency to appear to be sluggish, i.e., a waiting time is presented, and the present invention seeks to at least partially address such latency. In addition, when the data provisioning nodes of the data provisioning nodes 81-86 do not have sufficient data supply bandwidth to support a data stream 60 at a rate for delivering video and similar services to the user. At the time, the technical problem of entering 2 steps will appear. In order to solve the lack of such data supply bandwidth, several data supply nodes, for example, the supply nodes S1 to S6 illustrated in the figure are used to supply the data stream 6; for example Each of the data supply nodes S1 to S6, for example, is implemented as a plurality of food feeders, and can deliver a small portion, for example, 128 仟 bytes/second, 21 200835270 is suitable for digital video discs of the same quality. A large data stream, for example, i million bytes per second, is given to the user device 50. However, such a solution S makes it possible to know that the data stream from the above-mentioned ‘the peer network 2〇 is set to 5〇3 for the user^, and it is more difficult to prevent non-split. In addition, a further problem that is initiated by the present invention is that if only the data supply nodes S1 to S6 of the network are individually selected to supply data to the user device, ^ Each Weiding data supply node S1 to S6 has sufficient capacity to provide data to serve the user device 5G, and the end-to-end data supply capability of the network 2G will soon be exhausted. Only the supply nodes with the remaining 10 modest capabilities are left. The network 10 is thus operable to prioritize supply nodes that exhibit relatively large data provision capabilities using the network 20, while employing supply nodes that exhibit relatively small data provision capabilities. The definition of the usage of the clearing material supply nodes S1 to S6t is to generate the above-mentioned limit information -15 _ '(4) user device scales transmitted to the end-to-end network 2 in the third request message just described. Line-term calculation (four) into. The user device 50 cooperated with the network device may also operate to: in the limit data, a specific data supply node becomes unavailable or cannot supply its specific, bead block into the One or more 20th generation selective data supply nodes in the end-to-end network 20 are sought for in the event stream 6 以便 to be received at the user %%. The operation of the above-described network ^ according to the present invention will now be explained step by step with reference to FIG. In Fig. 4, the end-to-end network 2 includes the aforementioned data supply node smS8, plus the super node indicated by _. Optionally, one or more of the data supply nodes 81 to 88 may also act as a 22 200835270 hyper-segment 'point; or the super-node _ is distinct from the data supply node (four) . Although only four data supply nodes 81 to S7 are shown in FIG. 4, it should be understood that more than seven data supply nodes, or alternatively less than seven data supply nodes, may be in the end-to-end network 2 It is active in the sputum. Each SuperNode_ is associated with one or more data provisioning sections _8, and is operative to maintain one or more of its associated data supply points S1 to S8 stored in the aforementioned information Fragment as an example

區段之紀錄。 在運作中,該使用者裂置5〇,係藉由如副所指明之超 節點引導式請求和後繼之第一回應訊息,來與該超節點6〇〇 相通訊,該超節點引導式訊息61〇可判定,何者資料區塊, 舉例而言資料包,可由何者資料供應節點81至§8來供應。 在接收到訊息610内之回應時,該使用者裝置5〇,接著可傳 送620所指明之能力請求訊息,給該等㈣供應節點^至 15 S7,而請求該等用以供應資料包之資料供應節點以至^的 能力之指示符。該等資料供應節點§1至87,可回應一個可 指示彼等之資料區塊供應能力的資訊,舉例而言,如表^ 所描述。 盘丄資料區塊供應能力之指示符,620The record of the section. In operation, the user is spliced 5 times, and communicates with the super node 6〇〇 by the super node guided request and the subsequent first response message as indicated by the secondary, the super node guided message 61〇 can determine which data block, for example, the data package, can be supplied by the data supply nodes 81 to § 8. Upon receiving the response in the message 610, the user device 5, then transmitting 620 the capability request message indicated to the (4) provisioning node ^ to 15 S7, requesting the information for supplying the data package An indicator that supplies the ability of the node to ^. These data supply nodes, § 1 to 87, may respond to a message indicating their ability to supply data blocks, for example, as described in Table 2. Indicator of the supply capacity of the data block, 620

23 20 200835270 表1指示出總值為m片段/秒的潛在可能之供應能 力。 表1僅屬範例性。當該使用者裝置50,自該等資料供應 節點S1至S7,接收到資料供應能力資訊時,舉例而言,如 • 5表1所描述,該使用者裝置50,接著會執行一個演算^,使 自該資料供應此力資訊,產生一個前述之限額資料;便利 ’ 而言,該限額資料通常係稱為一個以第4圖中之“QCD”所指 ^ 明的“限額卡,,。舉例而言,該限額資料可包含有一些用以 供應如表2中所描述之資料片段的指令。理應注意的是,基 10於資料供應郎點至%足以確保給使用者裝置%之資料供 應的考量,S7係未被選定。此種選擇係可選擇地考量該等 資料供應節點S1至S8之先前性能,以致一個指示高資料供 應性能但先前實際上未遞送此種資料之給定資料供應節 點,係特意不被該使用者裝置50選擇。資料供應性能可由 15 一個或多個準則來判定: % 该給定之資料供應節點,僅僅是無法運作來供應前 述之限額卡如該使用者裝置所請求的資料區塊; (b)該給定之資料供應節點,已在一種暫時不可靠之方 式中回應,以致資料區塊在該使用者裝置5〇之緩衝器内已 20 必須要做合理之後繼分類; (C)該給定之資料供應節點所供應的資料區塊,已包含 有因該網路2〇内所發生之干擾或雜訊所致加增程度的資料 漏失或錯誤。 有益的是,每個資料供應節點81至別,係以該使用者 24 200835270 裝置50處的一個“服務品質”參數,亦即QoS,來加以說明, 此種QoS參數係可選擇地為以下的至少一個:該使用者節點 50由先前的經驗所匯整者、該網路20的一個被指定來提供 資料供應性能資訊之節點所傳達經過匯整者。23 20 200835270 Table 1 indicates the potential supply capacity for a total of m segments/second. Table 1 is merely exemplary. When the user device 50 receives the data supply capability information from the data supply nodes S1 to S7, for example, as described in Table 1, the user device 50 then performs a calculation ^, The provision of such information from the information to produce a limit data; in the case of convenience, the limit data is usually referred to as a "limit card" as indicated by "QCD" in Figure 4, for example. In other words, the quota information may include some instructions for supplying the data segments as described in Table 2. It should be noted that the base 10 is sufficient to ensure that the data is supplied to the user device %. In consideration, the S7 system is not selected. This option selectively considers the previous performance of the data supply nodes S1 to S8 such that a given data supply node indicating high data provision performance but has not actually delivered such data before. Is not specifically selected by the user device 50. The data provisioning performance can be determined by one or more criteria of 15: % The given data provisioning node is simply not operational to supply the foregoing The limit card is a data block requested by the user device; (b) the given data supply node has responded in a temporarily unreliable manner such that the data block is in the buffer of the user device 5 The internal data must be classified as follows: (C) The data block supplied by the given data supply node already contains the degree of increase due to interference or noise generated in the network. Data loss or error. Beneficially, each data supply node 81 is described by a "quality of service" parameter, ie QoS, at the user's 2008 200835270 device 50. Such QoS parameters are Optionally, at least one of the following: the user node 50 is communicated by the former experiencer, a node of the network 20 that is designated to provide data provisioning performance information.

5 表2限額卡中所指示之資料供應,QCD 資料供應節點 用以供應資料區塊或等類之資料供應節點能力 S1 10資料片段/秒 — S2 25資料片段/秒 — S3 30資料片段/秒 ~一 S4 5資料片段/秒 " S5 29資㈣片段/秒 S6 1資料片段/秒 "'5 Table 2 The data supply indicated in the limit card, the QCD data supply node is used to supply data blocks or other data supply node capabilities S1 10 data segments / sec - S2 25 data segments / sec - S3 30 data segments / sec ~ one S4 5 data fragment / sec " S5 29 (four) fragment / second S6 1 data fragment / second " '

表2係對應於總值為1〇〇片段/秒的被選定之供應能 力,其係少於表1中所指示總值為111片段/秒的潛在可能 之供應能力。 理應注意的是,該限額卡係指明該資料供應節點S6, 10其係具有1片段/秒之平價能力,以及將其需求化給該資料 供應節點S3,而使類似節點S6的較低能力之資料供應節 點’在消費來自類似節點S3的較高能力之資料供應節點的 資料供應能力之前被利用。該限額卡亦包含有:要使資料 供應開始之起始時間t〇的一個指示符和一些舉例而言有關 15在每個被指定之資料供應節點S1至S6應供應其資料區塊、 資料片段、或合適之類似物時的時間tn之資訊。可選擇的 是,該時間tn係隱含在一個序列中,其中係指定有一些資料 片段,舉例而言,如表3用以供應1〇〇個連續資料封包。 25 20 200835270 冋 ra 网 ra 网 ra 问 S4 cc Q1 or CO cjr S3 S5 S2 SI S3 S5 S2 S3 -- S3 S5 S2 S4 S3 S5 CO SI O -5 S5 S2 S3 S5 S3 S5 SI S2 S5 S2 S3 o3 'si S4 S6 S3 S5 S2 SI S3 S5 s2 S3 S5 S3 S5 S2 SI S3 S5 S2 S3 S5 S2 S4 S3 S5 S2 SI S3 S5 S2 S3 S5 S3 S5 S2 SI S3 S5 S2 S3 S5 S2 S4 S3 S5 S2 SI S3 S5 S2 S3 该等資料供應節點81至86,全係接收前述在限額卡内 之表3的資訊。當檢視表3用以表示供應依據表3之1〇〇個連 續的貪料封包給使用者裝置5 Q時,有某些特徵應當注意到: 5 (a)表3中之貧料供應節點S1至S6的頻率,就表3中可容 許之離散性的情況而言,係正比於如表2中所提供之資料供 應即點的能力,藉以提供資料包給該使用者裝置5〇 ;舉例 而。,該資料供應節點S6,如表2中所描述,係僅能提供j 貝料片段/秒,以及因而係僅在表3之中央部分中被指定一 10次,而該資料供應節點S3,係可提供大約3〇資料包/秒, 以及因而係被有規律地被指定,而在表3中具有大致均勻之 發生率,亦即頻率; (b) 表3的每個小格,係對應於其需要供應一個資料包給 該使用者裝置50的對應被指定之資料供應節點§1至§6;以 15 及 (c) 表3中的小格,係對應於該等資料供應節點S1至S6 要在其中供應彼等之資料包的時間序列,其中,每個小格 係具有一個與之相聯結的時間^,以及表3係在時間上自左 上角逐列自左讀取橫跨至右而理解至右下角。 2〇 在第4圖中,該使用者裝置50,如640所指明,可將該 限額卡(QCD)傳達給該資料供應節點81至%。該等資料供 26 200835270Table 2 corresponds to a selected supply capacity with a total value of 1 〇〇 fragment/second, which is less than the potential supply capacity of the total value of 111 fragments/second indicated in Table 1. It should be noted that the quota card indicates that the data supply node S6, 10 has a parity of 1 segment/second, and the demand is applied to the data supply node S3, so that the lower capability of the similar node S6 is achieved. The data provisioning node 'is utilized before consuming the data provisioning capability of the higher capacity data provisioning node from similar node S3. The limit card also includes an indicator for the start time t〇 of the data supply start and some examples 15 for each data supply node S1 to S6 to be supplied with its data block and data segment. Information on the time tn when the analog or analog is appropriate. Alternatively, the time tn is implicit in a sequence in which some data segments are specified, for example, as shown in Table 3 for supplying one continuous data packet. 25 20 200835270 冋ra net ra net ra ask S4 cc Q1 or CO cjr S3 S5 S2 SI S3 S5 S2 S3 -- S3 S5 S2 S4 S3 S5 S1 S3 S5 S2 S2 S3 S3 S3 S5 S2 S2 S3 S3 Si S4 S6 S3 S5 S2 S3 S5 S2 S3 S5 S2 S3 S2 S2 S3 S5 S2 S3 S2 S2 S2 S3 S2 S2 S2 S2 S2 S3 S2 S3 S2 S2 S3 S2 S2 S3 S2 S2 S3 The data supply nodes 81 to 86 all receive the information of Table 3 in the quota card. When the view table 3 is used to indicate that the supply of the continuous greedy packet according to Table 3 is given to the user device 5 Q, some features should be noted: 5 (a) The poor supply node S1 in Table 3 The frequency to S6, in the case of the allowable discrepancies in Table 3, is proportional to the capability of providing the data as provided in Table 2, thereby providing a packet to the user device 5; for example . The data provisioning node S6, as described in Table 2, is only capable of providing j-strips/sec, and thus is only designated 10 times in the central portion of Table 3, and the data provisioning node S3, Approximately 3 〇 packets/sec can be provided, and thus are regularly assigned, while in Table 3 there is a substantially uniform incidence, ie frequency; (b) each cell of Table 3 corresponds to It needs to supply a data package to the corresponding designated data supply nodes §1 to §6 of the user device 50; to the small cells in Tables 15 and (c), corresponding to the data supply nodes S1 to S6 The time series in which the packets are to be supplied, wherein each cell has a time associated with it, and Table 3 is read from the left to the right in the top left column from time to time. Understand to the bottom right corner. 2 In Figure 4, the user device 50, as indicated at 640, can communicate the limit card (QCD) to the data provisioning node 81-%. This information is available for 26 200835270

應節點S1至S6 ’接著會適時回應而供應彼等包含在該限額 卡(QCD)内如表3中所界定而成資料串流60之資料包,舉例 而言,如第4圖中之650所指明,使在該使用者裝置5〇之前 述缓衝器處被接收。方便的是,該缓衝器係被實現為一個 5先進先出(FIFO)缓衝器,舉例而言,在與該使用者裝置5〇 中所包含的電腦計算硬體相聯結之資料記憶體内。該資料 串流60係在該使用者裝置5〇中被解碼,而產生66〇所指明之 節目内容,藉以呈現給670所指明之使用者。該節目内容舉 例而言,可至少包含有以下之一:音訊、移動影像、靜止 10影像、視訊、快顯視窗等動晝軟體物件、Applets(g)】ava、電 視型節目内容、等等。 理應瞭解的是,在第4圖中,該等資料供應節點81至 S6,係可運作來編碼該資料串流辦所傳送之資料包,以 及該使用者裝置50,係可運作而在產生該節目内容嶋時對 Μ應地解碼該等資料包。此種編碼和解碼早先已更詳細閣明 過。 該使用t裝置5〇内所執行之負載平衡演算法,係可運 作使配合具冗餘性之編碼,炎告 火只現多重節點間之負載平 衡;其係藉由實現一個如早先 戟十 20 斤闡明之數位微分分析平衡 口口,來達成此種負載平衡。在 多數+仅忒網路10中,有利的是採用 夕數之貝枓供應郎點,來傳 1¥1Φ所龜-从一 貝抖片段,彼等構成了如第2 圖中所,、、、員不的貪料封包和因而欠 優點係包括: 續包。此種資料供應之 ⑷其可克服中央資料串流資料區塊供應配置會遭遇到 27 200835270 之單點失誤;在該等資料供應節點81至%中的一個變成暫 柃性無動作之事件中,前述之里德所羅門編碼,係可修正 至即定程度之資料漏失;以及 (b)—些具有因不對稱性網際網路連結所致之有限上游 5資料供應頻覓的資料供應節點,係可依彼等之供應資料能 力的比例,來貢獻供應資料。 由於該限額卡(QCD)中所包含表3中之資訊的隱含時 間排序,該等資料供應節點81至56,係可排序彼等傳送之 片段,以致可大幅降低多重片段因瞬間資料超載而阻塞網 10路10之風險,因而可降低在該使用者裝置50處之資料片段 的漏失之潛在風險。 今將參照第5圖進一步闡明該等資料供應節點之負載 平衡有關的 >臾异法。在弟5圖中,其中係顯示一個取得來自The nodes S1 to S6' will then respond in a timely manner to supply the data packets contained in the quota card (QCD) as defined in Table 3, for example, as shown in Figure 4, 650. As indicated, it is received at the aforementioned buffer of the user device 5〇. Conveniently, the buffer is implemented as a 5 first in first out (FIFO) buffer, for example, in a data memory associated with computer computing hardware included in the user device 5A. Inside. The data stream 60 is decoded in the user device 5, and the program content specified by 66 is generated for presentation to the user indicated by 670. For example, the content of the program may include at least one of the following: audio, moving images, still images, video, pop-up windows, etc., applets, ava, television program content, and the like. It should be understood that in FIG. 4, the data supply nodes 81 to S6 are operable to encode the data packet transmitted by the data stream server, and the user device 50 is operable to generate the data packet. When the content of the program is defamatory, the data packets are decoded. This encoding and decoding has been explained in more detail earlier. The load balancing algorithm executed in the device 5 is operable to match the redundancy of the code, and the fire is only the load balance between the multiple nodes; The digital analysis of the balance is balanced to achieve this load balance. In the majority + only network 10, it is advantageous to use the 夕 之 枓 枓 枓 , , , , , 1 1 1 1 1 1 - - - - - - - - - - - - - - - - - - - - - - - - - - - The greedy packets and the owing advantages of the staff include: renewal. (4) This can overcome the single point error of 27 200835270 when it overcomes the central data stream data block allocation configuration; in the event that one of the data supply nodes 81 to % becomes a temporary non-action, The aforementioned Reed Solomon code can be corrected to a certain degree of data loss; and (b) some data supply nodes with limited upstream 5 data supply due to asymmetry Internet connection. Contribute supply information in proportion to their ability to supply data. Due to the implicit time ordering of the information in Table 3 included in the Quota Card (QCD), the data providing nodes 81 to 56 can sort the segments transmitted by them, so that the multi-segment can be greatly reduced due to the instantaneous data overload. The risk of blocking the network 10 is 10, thereby reducing the potential risk of loss of data fragments at the user device 50. The > ambiguity method related to the load balancing of these data supply nodes will be further clarified with reference to Fig. 5. In the picture of brother 5, which shows a get from

該等資料供應節點,舉例而言,來自該等資料供應節點W 15至別,之資料供應的方法之流程圖。在此方法之第一步驟 中,該使用者裝置50,可將何者資料供應節點有能力提供 給定之資料區塊,舉例而言,資料片段或資料包,有關之 請求610,傳送給該超節點600。此超節點600可以資訊气氣 610來回應’而提供有關該網路20之資料供應節點何者有、既 20 力提供上述給定之資料區塊的資訊。該使用者裝置5〇, υ ’接 著可將有關彼等提供上述給定之資料區塊的能力之請求$ 息620,傳送給該等資料供應節點,舉例而言,給該等資料 供應節點S1至S7。該等資料供應節點,舉例而言,該等資 料供應節點S1至S7,可如630所指明,回應有關供應資料區 28 200835270 塊給該使用者裝置50之能力的資訊。在前述之等待時期内 接收到該資訊時,該使用者裝置50,便會產生前述包含如 表3中所示為例之分配的限額資料(qcd)。在一個判定步驟 710中,該使用者裝置50,可核對而判定該等資料供應節 5點,舉例而言,該等資料供應節點S1至S7,是否具有足夠 的能力來供應該等給定之資料區塊。在該等資料供應節 點,舉例而言,該等資料供應節點S1至S7,無法提供足夠 的能力之事件中’該方法會前進至步驟720,在此,會核對 該端對端網路20内之所有資料供應節點,是否已就供應該 10給定之資料區塊給該使用者裝置50做過檢視。 若所有之資料供應節點,已檢視過該端對端網路20 中’並無足夠之可用資料供應能力,該方法便會前進至一 個失誤步驟730 (FLR),在此,該使用者67〇係被通知無相 關聯之服務可供利用;替代選擇地或附加地,在步驟73〇 15處,該使用者裝置5〇,係可運作而將告或遊戲呈現給該使 用者670。再有的替代選擇是, 在该等節點S1至S7均無能力提供以端對端之方式傳播 至其的資料包之事件中,彼等資料包可直接由該中央來源 30來和:供。可選擇的是,在一個等待時間之後,該使用者 2〇裝置50,能重複如第5圖中所描述之詢問,藉以判定該端對 端網路20内,是否有更多之資料供應能力隨後已變為可 用。虽執行步驟720時,若所有之資料供應節點,舉例而言, 該等資料供應節點S1至S6,並未被查詢或調查,該方法便 會耵進’而自該超節點6〇〇詢問該端對端網路20内可用的其 29 200835270 他有潛力之資料供應節點。 右在步驟710處,發現該端對端網路2〇已有足夠之能力 可用來供應t料區塊,該轉_qcd)接著會在步驟 中’傳達給該等資料供應節點,舉例而言,给該等資料供 5應節點S1至S6,而使該等資料供應節點,在一個舉例而言 如表3中所描述之時間序列中,傳送彼等之資料封包。當所 有之資料區塊均已在該制者I置赠被接收到時 ,該方 法便;兩進至-個狀知P1,以指示所有被請求之資料區 塊,舉例而言,資料包,均已在該使用者裝置50處成功地 10被接收到。或者,在並非所有之資料區塊均被接收到的事 件中,該方法便會前進至一個判定級段75(),在此,該等已 被运疋之資料供應郎點的性能將會被檢視。在判定級段750 下,在忒專資料供應節點,舉例而言,該等資料供應節點 S1至S6已被偵測出均已正常執行之事件中,該方法便會前 15進至一個以P2指明之完成狀態。反之,在該等資料供應節 點於該判定級段750處被判定屬執行不當之事件中,該方法 便會前進至一個進一步搜尋判定級段760 ;或者,該方法便 會異常中止而重頭開始。在該搜尋級段760下,若有關資料 供應節點之搜尋已達盡頭,該方法便會產生用以展示給該 20 使用者670的一個可指示該資料串流60之供應有風險的警 告;此項警告係在一個以P3指明之步驟下產生出。或者, 自該級段760,在該等資料供應節點尚未無遺漏地被搜尋之 事件中,資料供應節點替代選擇,係如770所指明藉由在該 超節點600處詢問來加以搜尋。 30 200835270 在一些特定之資料區塊的選項中,舉例而言,無可供 利用之資料包,該方法可選擇運作來傳送一些來自該端對 端網路20而用以供應特定之資料區塊,舉例而言,資料包 或資料片段,有關的請求。可選擇的是,上述特定之片段 5有關的請求,係直接傳送給該等資料供應節點“至如,而 不需在該超節點600處查詢。A flow chart of the data supply nodes, for example, methods of data supply from the data supply nodes W 15 to others. In the first step of the method, the user device 50 can determine which data supply node is capable of providing a given data block, for example, a data segment or a data packet, and the related request 610 is transmitted to the super node. 600. The SuperNode 600 can respond to the information 610 to provide information about which of the data supply nodes of the network 20 have, and provide the above-mentioned given data blocks. The user device 5, υ' can then transmit a request for information about the capabilities of the given data block to the data supply node, for example, to the data supply node S1 to S7. The data supply nodes, for example, the data supply nodes S1 through S7, may, as indicated at 630, respond to information regarding the ability of the supply data area 28 200835270 to the user device 50. Upon receipt of the information during the aforementioned waiting period, the user device 50 generates the aforementioned quota data (qcd) containing the assignments as exemplified in Table 3. In a decision step 710, the user device 50 can check and determine the data supply nodes 5 points, for example, whether the data supply nodes S1 to S7 have sufficient capabilities to supply the given data. Block. In the event that the data provisioning nodes, for example, the data provisioning nodes S1 to S7 are unable to provide sufficient capabilities, the method proceeds to step 720 where the end-to-end network 20 is verified. All of the data supply nodes have provided the user device 50 with a view of the supply of the given data block. If all of the data provisioning nodes have checked that there is insufficient data availability available in the end-to-end network 20, the method proceeds to a fault step 730 (FLR) where the user is 67〇 It is notified that no associated service is available; alternatively or additionally, at step 73〇15, the user device 5 is operable to present the game or game to the user 670. A further alternative is that in the event that none of the nodes S1 to S7 are capable of providing a packet to which they are transmitted end-to-end, their packets may be directly supplied by the central source 30. Alternatively, after a waiting time, the user 2 device 50 can repeat the inquiry as described in FIG. 5 to determine whether there is more data supply capability in the end-to-end network 20. It has then become available. When step 720 is performed, if all the data supply nodes, for example, the data supply nodes S1 to S6, are not queried or investigated, the method will break into 'from the super node 6 〇〇 The 29 200835270 available in the end-to-end network 20 has its potential data supply node. Right at step 710, it is found that the end-to-end network 2 has sufficient capacity to supply the t-block, which will then be 'passed' to the data supply nodes in the step, for example The data is supplied to the five nodes S1 to S6, and the data supply nodes are caused to transmit their data packets in a time series as exemplified in Table 3. When all the data blocks have been received by the producer I, the method proceeds; the two enters the P1 to indicate all the requested data blocks, for example, the data package, Both have been successfully received 10 at the user device 50. Alternatively, in the event that not all of the data blocks are received, the method proceeds to a decision stage 75(), where the performance of the already-run data supply points will be View. In the decision stage 750, in the event that the data supply node, for example, the data supply nodes S1 to S6 have been detected to have been executed normally, the method will advance to the first 15 to P2. Indicate the completion status. Conversely, in the event that the data supply node is determined to be improperly executed at the decision stage 750, the method proceeds to a further search decision stage 760; alternatively, the method aborts and starts over. Under the search stage 760, if the search for the data provider node has reached the end, the method generates a warning to the 20 user 670 indicating that the supply of the data stream 60 is at risk; The warning is generated in a step specified by P3. Alternatively, from the stage 760, in the event that the data provisioning nodes have not been searched for, the data provisioning node replaces the selection, as indicated by 770, by searching at the supernode 600 for searching. 30 200835270 In some specific data block options, for example, there are no available data packets, the method can be selected to operate to transmit some of the data blocks from the end-to-end network 20 for provisioning specific data blocks. For example, a package or piece of information, related to the request. Alternatively, the request for the particular segment 5 described above is transmitted directly to the data provisioning node "to, for example, without having to query at the supernode 600.

本發明係有關一些經由網際網路以端對端之方式提供 資料區塊來提供數位電視服務給該使用者6 7 〇。藉由此種資 料區塊供應之方法,係可克服出自如當代數位有線電視中 10所採用之中央資料來源的資料串流之問題。 雖然前文之說明係使用網際網路,本發明亦可在其他 類型讀位通訊網路中被實現。此外,上述端對端網路2〇 中之貧料供應節點的有效性,係可容許響應輕合至該網路 10而嘗試存取該端對端網路射所儲存之資料區塊的其他 15使用者’而動態地加以改變。因此,上述如第4和谢所 描述之方法,係可容許在該使用者裝置50運作時被頻 20 可選擇的是’為確保網際網路前置處理與對使 置的資料區塊供應之間有最佳的平衡,最好是制二 個資料供應節點,來支援„料串流6q;_㈣,0 關就此種目的而使用6個㈣供應“。 可選擇的是’該使用者裝置5G’可動態地被重新配置, Ί可^為該端對蠕網路尉的—個資料供應節點,藉 以將该处接收到之資料區塊,供應給該網路10中的其他^ 31 200835270 用者;再可選擇的是,該使用者裝置50,亦可動態地被重 新配置’使作用為—個與上述超節點_同性質之超節點。 一個可在上述用以實現本發明之使用者裝置50的電腦 計异硬體中執行之軟體,係可容許經由該網路1〇下載給該 5使用者裝置50,藉以促使該網路10能被重新配置或升級。 該軟體產品係可選擇地在一個資料載體上面,舉例而言, 在-個類似數位儲存碟片之記憶體媒體上面、在一個網際 網路載波信號上面、在一個無線電信號上面、在固態記憶 體媒盤或類似品上面,使遞送給該使用者裝置5〇。 1〇 應瞭解的是,本發明在前文所說明之實施例,係可 不运離本赉明如所附申請專利範圍所界定之界定範圍 下被修錦。 申請專利範圍中包括在含刮弧内之參照數字,係旨在 ^理解申請專利範_所主張之標的,以及不應被證釋 15 :、、、思在限制申請專利範圍之界定範圍。所涉及之單數,亦The present invention relates to the provision of digital television services to the user via the Internet in a peer-to-peer manner. The method of supplying such information blocks can overcome the problem of data streaming from central sources such as 10 used in contemporary digital cable television. Although the foregoing description uses the Internet, the present invention can also be implemented in other types of read bit communication networks. In addition, the effectiveness of the poor supply node in the end-to-end network 2 is to allow the response to be lightly coupled to the network 10 and attempt to access the data block stored by the end-to-end network. 15 users' and dynamically changed. Therefore, the method described in the above 4th and Xie can be allowed to be frequency-selected when the user device 50 operates, to select 'to ensure the internet pre-processing and the supply of the data block to be placed. There is an optimal balance between the two, preferably two data supply nodes to support the "feed stream 6q; _ (four), 0 off for the purpose of using six (four) supply". Alternatively, the user device 5G can be dynamically reconfigured, and the data supply node of the end of the network can be supplied to the data block. Other users in the network 10 are the 2008 31270 users; alternatively, the user device 50 can also be dynamically reconfigured to act as a super node of the same nature as the super node described above. A software executable in the above-described computer hardware for implementing the user device 50 of the present invention can be downloaded to the 5 user device 50 via the network 1 to facilitate the network 10 Reconfigured or upgraded. The software product is optionally on a data carrier, for example, on a memory medium similar to a digital storage disk, on an internet carrier signal, on a radio signal, in solid state memory. The media disk or the like is delivered to the user device 5〇. 1 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 。 The reference number included in the scope of application for patents is intended to understand the subject matter claimed by the patent application, and should not be excused 15 :,,,,,,,,,,,,,,,,,,,,,,,, The singular number involved, also

應被给料與複數相關。 在成明及主張本發明中所用之術語,諸如“包含有,,It should be related to the plural. Terms used in the invention and claimed in the present invention, such as "contains,

Of).^ 有(have)、“是,,(are)、“合併,,(inc〇rp〇酿),應在非排他性 式中被言全釋’亦艮p ’容許有其他未明確指明之部件或 式簡單說明】 第1圖係一個可依據本發明而運作之端對端資料供應 網路的例示圖; " 32 200835270 第2圖係第i圖之網路中所傳達之資料串流、資料串流 群組、資料包、資料封包、和資料段之階層的例示圖; 第3圖係第1圖之網路中所執行 圖 、、兩碼和解碼的例示 圖之網路的使用 第4圖係一種用以提供資料串流給第^ 者裝置之方法的例示圖;而 第5圖則係一種用以選擇第!圖之 、罔路中的貧料供應節 點使解決可變節點錄、節關失、和節轉代的方法之 進一步例示圖。 10 【主要元件符號說明】Of).^ have (have), "yes,, (are), "merger," (inc〇rp brewing), should be fully explained in the non-exclusive formula 'also 艮p 'allow other unspecified BRIEF DESCRIPTION OF THE PART OR TYPES] Figure 1 is an illustration of an end-to-end data supply network that can operate in accordance with the present invention; " 32 200835270 Figure 2 is a data string conveyed in the network of Figure i An illustration of the hierarchy of streams, data stream groups, data packets, data packets, and data segments; Figure 3 is a diagram of the network executed in Figure 1, the two-code and the decoded example network. Figure 4 is an illustration of a method for providing a stream of data to a device of the second; and Figure 5 is a selection for the first! A further example of a method for solving the problem of variable node recording, node loss, and node generation is provided by the poor material supply node in the figure and the road. 10 [Main component symbol description]

10,20·..數據通訊網路 30.. .中央來源 40…資料區塊 50.. .使用者裝置 60…資料串流 100…資料串流群組 110,120,130,140···資料串流群組 200,210,220···資料包 300,310,320···資料封包 400,410,420···資料片段 500…里德所羅門編馬功能 10···里德所羅門清除校正和 解碼功能 600···超節點 610…超節點引導式訊息 620···請求訊息 660···節目内容 670…使用者 710,720,730,740,750,760.一步驟 750…判定級段 Dn··.資料區塊 S1-S8···資料供應節點 3310,20·..data communication network 30.. .central source 40...data block 50..user device 60...data stream 100...data stream group 110,120,130,140···data stream group 200,210,220· ····························································································································· ···Request message 660···Program content 670...user 710,720,730,740,750,760. One step 750...determination stage Dn··.data block S1-S8···data supply node 33

Claims (1)

200835270 十、申請專利範圍: L六種可㈣-條數據通訊網路供應—個或多個資料串 :、、°個使用者裝置的方法,該數據通訊網路係包含有 :數刀佈其中之資料供應節點,該等—個或多個資料串 μ係對應於儲存在該料料供應節點之間的—個或多 個貝料區塊’此種方法包含之步驟有: ⑻將有關用以判定該等資料供應節點間的一個或 夕個貝料區塊之分佈的一個或多個請求傳送進該網路 内; (b)在一段時間周期内,接收響應該等一個或多個請 求之被接收所產生的—個或多個回應,此等-個或多個 回應’可運作來傳遞用以指示該種分佈之資訊; (C)產生用以供應該等一個或多個資料區塊所使用 之資料供應節點的至少一個子集有關之限額資料 (QCD)此種限頭資料係包含有一些指令,彼等是以上 述分佈之一函數,將來自該等資料供應節點之子集的資 料區塊,供應給該使用者裝置; (d) 將該限額資料傳達給該資料供應節點之子集,藉 以下達指令給該資料供應節點之子集,使供應彼等各自 的一個或多個如該限額資料中所指明之資料區塊;以及 (e) 在該使用者裝置處,接收該等一個或多個被請求 之資料區塊,以供該處之使用者消費。 2.如申請專利範圍第1項之方法,其中,該子集係包含所 有之資料供應節點。 34 200835270 3·如申請專利範圍第1之方法,其中,該函數係有關供 應來自該等資料供應節點而至少部份與該項分佈成比 例之子集的資料區塊。 4·如申請專利範圍第i項之料,其中,該方法包含有的 一個步驟是,在該限額資料中,納入該等一個或多個資 料區塊要在其中供應之時間序列的指示符,該時間序列 係具有該等資料供應節點響應彼等供應該等一個或多 個資料區塊之能力而以頻率載明的子集。 5·如申請專利範圍第i、2、3或4項之方法,其中,該方法 包含有的一個步驟是,對每個資料供應節點之子集,同 樣地傳達忒限額資料,而使該子集内的每個資料供應節 點,亦可接收到該有關被請求供應該等一個或多個資料 區塊給該使用者裝置之資料供應節點的其他子集之資 訊。 6·如申請專利範圍第4項之方法,其中,言亥時間序列可界 定一個起始時間,該等一個或多個資料區塊,係自其開 始要傳送給該使用者裝置,其中,該料料供應節點之 子集,係可運作使相互獨立地相對該起始時間而同步 化,以及該等資料供應節點之子集,係可運作使大體上 在一些如該限額資料中所指明相對於該起始時間之時 間下供應彼等在該限額資料中所指明的一個或多個資 料區塊。 7·如申請專利範圍任一前項之方法,其中,該等資料供應 續點之子集’係包含有如該限額資料中所指明範圍在3 35 200835270 至ίο内之資料供應節點。 8·如申請專利範圍任一前項之方法,其中,該等一個或多 個資料封包,係以冗餘性就以下的至少一個加以編碼: (a) 資料漏失和/或清除錯誤有關之補償或修正·,和 (b) 資料錯誤有關之修正。 9·如申請專利範圍第8項之方法,其中,該等一個或多個 資料區塊,係在該等資料供應節點之子集下被編碼,以 及繼而係在該使用者裝置處被解碼。 10·如申請專利範圍第8項之方法,其中,該等一個或多個 資料區塊,係被里德所羅門(Reed_Solom〇n)編碼,以及 該使用者裝置在運作上,可對此使用者裝置處接收到的 一個或多個資料區塊,應用里德所羅門解碼。 11.如申請專利範圍任一前項之方法,其中,該使用者襞置 係包含有以下的至少一個有關之資料緩衝器: (a) 緩衝儲存來自該等資料供應節點之子集的_個 或多個資料區塊之供應速率中的變動;以及 (b) 在該資料供應節點子集可運作而脫離一個如該 限額資料中所指明之資料區塊供應的序列之事件中,重 °丁接收之資料區塊的順序。 11如申口月專利範圍任一前項之方法,其中,該使用者裝置 係可運作而呈現: ⑷-個資料供應中斷訊息給該使用者;和/或 、⑻在該限額資料(QCD)中所指明的一個或多個請 求之貝料II塊,未能按照該限額資料適時在該使用者裝 36 200835270 置處被接收的事件巾,將得自替代性資料區塊的節目内 谷主現給該使用者0 13·如申請專利_第12項之方法,其中,該使用者裝置, 係可運作而在該事件中傳送—個警告訊息給該數據通 ^網路,該警告訊息係可運作而在該網路中提示一個或 多個搜尋’藉以識別-個或多個替代性資料供應節點, 彼等可提供與該使用者裝置處未被可靠地接收到者相 對應之資料區塊。 K如申請專利範圍第13項之枝,其中,該中斷訊息和/ 或對應於該替代性㈣區塊的節目内容,會呈現給該使 用者’直至該替代性資料供應節點,可運作來供應該等 迄今未被可靠地接收到之資料區塊為止。 15·如申請專利範圍任—前項之方法,其中,該數據通訊網 路,係經由網際網路,至少部份地實現該等對應於電視 型節目内容的一個或多個資料區塊,以及該使用者裝置 係對應於一個電視型之顯示裝置。 16·如申請專利範圍任一前項之方法,其中,該等一個或多 個資料區塊,係對應於該使用者經由使用者裝置給該數 據通訊網路所執行之節目内容有關的請求。 17·如申請專利範圍任一前項之方法,其中,該等資料供應 節點中所儲存的一個或多個資料區塊,係事先以端對端 之方式傳播給該資料供應節點。 18.如申請專利範圍第17項之方法,其中,該等一個或多個 貪料區塊,係儲存在該資料通訊網路之資料供應節點中 37 200835270 的多重備份内。 19. 種可被適配來與數據通訊網路一起運作 琶,豆係被用者裝 …、 來執行—個如申請專利範圍任—前 主張之方法。 Μ項所 20. -種節目内容供應系統,其係包含有至少—個200835270 X. Patent application scope: L six kinds of (four) - data communication network supply - one or more data strings: , ° method of user device, the data communication network includes: several pieces of cloth a supply node, the one or more data strings μ corresponding to one or more bedding blocks stored between the material supply nodes. The method comprises the following steps: (8) One or more requests for distribution of one or one of the data blocks between the data supply nodes are transferred into the network; (b) receiving a response to the one or more requests over a period of time Receiving one or more responses generated, the one or more responses 'operating to convey information indicative of the distribution; (C) generating to supply the one or more data blocks Quota data (QCD) related to at least a subset of the data provisioning nodes used. The head data includes instructions that are a function of a subset of the data supply nodes. Block, supply (d) communicating the quota information to a subset of the data provisioning node, by using the following instructions to give a subset of the data provisioning nodes, such that one or more of their respective ones are included in the quota data And the (e) receiving, at the user device, the one or more requested data blocks for consumption by a user of the location. 2. The method of claim 1, wherein the subset includes all of the data supply nodes. 34. The method of claim 1, wherein the function is a data block for supplying a subset of the data supply nodes from at least a portion of the distribution. 4. The material of claim i, wherein the method comprises the step of including in the limit data an indicator of the time series in which the one or more data blocks are to be supplied, The time series is a subset of the data provisioning nodes that are frequency-encoded in response to their ability to supply the one or more data blocks. 5. The method of claim i, 2, 3 or 4 of the patent scope, wherein the method comprises the step of, for each subset of the data supply nodes, similarly communicating the quota data, and making the subset Each of the data provisioning nodes may also receive information about the other subset of the data provisioning nodes that are requested to supply the one or more data blocks to the user device. 6. The method of claim 4, wherein the sequence of time is defined as a start time, and the one or more data blocks are transmitted from the user device to the user device, wherein a subset of the material supply nodes operable to synchronize with each other independently of the start time, and a subset of the data supply nodes operable to substantially correspond to the one as specified in the limit data One or more data blocks specified in the limit data are supplied at the time of the start time. 7. The method of any preceding paragraph of the patent application, wherein the subset of the data supply continuation points comprises a data supply node having a range of 3 35 200835270 to ίο as specified in the limit data. 8. The method of any preceding claim, wherein the one or more data packets are coded with redundancy for at least one of: (a) data loss and/or cancellation error related compensation or Amendment, and (b) corrections related to data errors. 9. The method of claim 8, wherein the one or more data blocks are encoded under a subset of the data supply nodes and then decoded at the user device. 10. The method of claim 8, wherein the one or more data blocks are coded by Reed Solomon (Reed_Solom〇n) and the user device is operational and available to the user One or more data blocks received at the device, applying Reed Solomon decoding. 11. The method of any preceding claim, wherein the user device comprises at least one of the following data buffers: (a) buffering _ or more of the subsets from the data supply nodes a change in the supply rate of the data blocks; and (b) in the event that the subset of data provisioning nodes is operable to deviate from a sequence of data blocks as specified in the limit data, The order of the data blocks. The method of any of the preceding claims, wherein the user device is operable to present: (4) a data supply interruption message to the user; and/or, (8) in the limit data (QCD) The specified item or pieces of the requested item II, which failed to be received in accordance with the quota data at the time of the user's installation 36 200835270, will be obtained from the program of the alternative data block. The method of claim 12, wherein the user device is operable to transmit a warning message to the data network during the event, the warning message being Operating to prompt one or more searches in the network to identify one or more alternative data provisioning nodes, which may provide data chunks corresponding to those that are not reliably received at the user device . K is the branch of claim 13, wherein the interrupt message and/or the program content corresponding to the alternative (four) block is presented to the user 'until the alternative data supply node is operable to provide It should wait until the data block has not been reliably received so far. The method of claim 1, wherein the data communication network at least partially implements one or more data blocks corresponding to the content of the television program via the Internet, and the use The device corresponds to a television type display device. The method of any of the preceding claims, wherein the one or more data blocks correspond to a request by the user to the program content performed by the data communication network via the user device. 17. The method of any preceding claim, wherein one or more of the data blocks stored in the data supply node are propagated to the data supply node in an end-to-end manner. 18. The method of claim 17, wherein the one or more greedy blocks are stored in a multiple backup of the 200835270 data supply node of the data communication network. 19. The species can be adapted to operate with a data communication network. The beans are used by the user to perform a method as claimed in the patent application. Μ 所 20. A program content supply system, the system contains at least one 置二條在運作上可供應一個或多個資料區心 用者衣置之貧料通訊網路,該等—個或多個資料區塊, 係包含有節目内容,其中,該系統係被配置來執行一個 如申請專利範圍第1至18項任—項所主張之方法。 21. -種端對端數位電視系統,其係包含有至少—個電視型 使用者裝置,和-條至少部份立基於網際網路之數據通 訊網路’該祕係可運作來供應-個❹個資料區塊給 該使用者裝置,該等-個或多個資料區塊,係包含有節 目内容,其中,該系統係被配置來執行—個如申請專利 範圍第1至18項任一項所主張之方法。Providing two poor communication networks that are operationally capable of supplying one or more data areas, such as one or more data blocks, containing program content, wherein the system is configured to execute A method as claimed in any of the claims 1 to 18. 21. An end-to-end digital television system comprising at least one television type user device, and - at least part of an internet based data communication network - the secret system is operable to supply - a The data blocks are provided to the user device, and the one or more data blocks contain program content, wherein the system is configured to execute - one of the patent applications ranging from items 1 to 18 The method advocated. 22. 一種記錄在-個資料舰上面之細產品,此種軟體產 品係可在電腦計算硬體上面執行,藉以實現一個如申請 專利範圍第1至18項任一項所主張之方法。 3822. A fine product recorded on a data ship that can be executed on a computer computing hardware to achieve a method as claimed in any one of claims 1 to 18. 38
TW096139478A 2006-11-07 2007-10-22 Method of supplying streams of data TW200835270A (en)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2006/010645 WO2008055519A1 (en) 2006-11-07 2006-11-07 Method of supplying streams of data

Publications (1)

Publication Number Publication Date
TW200835270A true TW200835270A (en) 2008-08-16

Family

ID=38197745

Family Applications (1)

Application Number Title Priority Date Filing Date
TW096139478A TW200835270A (en) 2006-11-07 2007-10-22 Method of supplying streams of data

Country Status (2)

Country Link
TW (1) TW200835270A (en)
WO (1) WO2008055519A1 (en)

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030204602A1 (en) * 2002-04-26 2003-10-30 Hudson Michael D. Mediated multi-source peer content delivery network architecture
US20050268102A1 (en) * 2004-05-07 2005-12-01 Downey Kyle F Method and system for secure distribution of content over a communications network
US7664109B2 (en) * 2004-09-03 2010-02-16 Microsoft Corporation System and method for distributed streaming of scalable media

Also Published As

Publication number Publication date
WO2008055519A1 (en) 2008-05-15

Similar Documents

Publication Publication Date Title
US10298638B2 (en) Streaming media delivery system
US8185611B2 (en) Streaming media delivery system
JP4676833B2 (en) System and method for distributed streaming of scalable media
JP5058468B2 (en) Method for erasure resistant encoding of streaming media, media having computer-executable instructions for performing the method, and system
US10003535B2 (en) Bulk data transport in a network
US8595372B2 (en) Streaming media buffering system
JP2006079606A (en) Receiver-initiated system and method in peer-to-peer network
MXPA05013618A (en) Retry strategies for use in a streaming environment.
US10834472B2 (en) System and methods for providing content to vehicles
US20090156177A1 (en) Reducing Bandwidth When Transmitting Content to a Cellular Device
US10678713B2 (en) Balanced computer network and method
US20240348891A1 (en) Multisource media delivery systems and methods
TW200835270A (en) Method of supplying streams of data
KR102398654B1 (en) Broadcasting service method and broadcasting service system
JP2007041899A (en) Content distribution apparatus, content distribution network, and content distribution method