TW201220767A - System and method for peer-to-peer live streaming - Google Patents
System and method for peer-to-peer live streaming Download PDFInfo
- Publication number
- TW201220767A TW201220767A TW099137965A TW99137965A TW201220767A TW 201220767 A TW201220767 A TW 201220767A TW 099137965 A TW099137965 A TW 099137965A TW 99137965 A TW99137965 A TW 99137965A TW 201220767 A TW201220767 A TW 201220767A
- Authority
- TW
- Taiwan
- Prior art keywords
- node
- time
- peer
- flag
- nodes
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims description 33
- 238000007726 management method Methods 0.000 claims description 22
- 238000012545 processing Methods 0.000 claims description 10
- 230000008569 process Effects 0.000 claims description 9
- 238000011084 recovery Methods 0.000 claims description 6
- 238000012217 deletion Methods 0.000 claims description 3
- 230000037430 deletion Effects 0.000 claims description 3
- 238000010586 diagram Methods 0.000 description 35
- 230000007246 mechanism Effects 0.000 description 9
- 230000004044 response Effects 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000006870 function Effects 0.000 description 5
- 230000003111 delayed effect Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 3
- 238000013459 approach Methods 0.000 description 2
- 230000001934 delay Effects 0.000 description 2
- 230000001629 suppression Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000001125 extrusion Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 238000005065 mining Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 238000003672 processing method Methods 0.000 description 1
- 230000004043 responsiveness Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 239000010421 standard material Substances 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 238000012549 training Methods 0.000 description 1
- 230000001755 vocal effect Effects 0.000 description 1
- 238000009941 weaving Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/24—Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/80—Responding to QoS
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/61—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
- H04L65/612—Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/236—Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
- H04N21/2365—Multiplexing of several video streams
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/2383—Channel coding or modulation of digital bit-stream, e.g. QPSK modulation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/2387—Stream processing in response to a playback request from an end-user, e.g. for trick-play
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4788—Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Engineering & Computer Science (AREA)
- Information Transfer Between Computers (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Computer And Data Communications (AREA)
Description
201220767 六、發明說明: 【發明所屬之技術領域】 發明所屬之技術領域係關於一同儕 (PEER-TO-PEER,P2P)即時串流系統與方法。 【先前技術】 現今網路頻寬日漸提升,對影音串流(media streaming) 的品質也相對提升,因此也增加了影音伺服器(media server) 的頻寬用量,為減少影音伺服器的頻寬負擔,許多軟體也 開始以P2P技術為發展方向,常見的如BitT〇rrent出丁)類 或是網狀(mesh)網路等形式。 例如,即時重播(instant replay)與時光回溯(time-shifted) 播放(playback)的一篇專利公開文獻(uS2〇〇7〇13〇597)中, &供個多媒體内谷傳遞伺服器(multimedia content delivery server)來儲存所有即時視訊串流(Uve video stream) ’以便提供即時重播(instantrepiay)的功能,如同時 光回溯(time-shifted),可以隨時重播之前的畫面,並且透 過一中央控管機制,終端藉由數位機上盒(sett〇pb〇x),將 時光回溯的時間點回傳到此中央控管機制的伺服器,然後 此祠服器再回應以相關的訊息或資料。當終端使用的人數 增多時’往往需要添購伺服器與增加網路頻寬,來確保服 務品質。 專利文獻(US7,536,704)揭示一種提供内容顯示 3 201220767 (display of content)與自動停止與回復播放(automatic pause and resume of playback)技術。此技術可實施於客户端設 備(client device)且/或是前端(ahead-end)或是網路操作 者端(network operator)。此技術根據事件型態(type of event)、源起者(originator)以及目前顯示的型態(type of current display),來對事件指定優先權(priority),以提供多 樣化的回應等級(variable response level) ’此技術的缺點是 需要維護中央控管的機制,容易造成系統瓶頸。
在專利文獻(US2008/0133767)即時群播同儕視訊串 流平台(Real-Time multicast Peer to Peer video streaming platform)中’如第一圖所示’ 100提供一種分散式儲存即 時串流的技術。内容提供者102利用一台連接至一公用 網路(public network)104的電腦設備,並且希望儲存於其 快取記憶體裡的内容區塊(chunks of content)能分散給鄰近 的節點(peer)108-114 ’此内容例如來自一攝影機1〇6或是 其他資料來源。内容提供者102與鄰近的節點ι〇8_ιΐ4在 其各自的電腦設備上執行一軟體或硬體的串流代理 116 ’來促使這些内容區塊易於分散給其他節點。這種架 構需要一台伺服器以操取或存放節目的所有資料,如果 節目是即時(Live)型態,如此伺服器的資料空間將會面 臨不足的問題。另一方面,如果觀眾的數量越多,伺服 器將會面臨網路頻寬不足.而導致即時節目的晝面停格 或不順暢的問題。其原因是此技術沒有提到同儕之間相 互協調負載平衡(load balance)的機制。 201220767 另一篇專利文獻(US2006/0〇53209)是揭示一種可調 整大小之媒體(scalable media)的分散式串流(distributed streaming)技術。在連結同儕網路(coupied p2p netw〇rks) 上’節點串流器(PeerStreamer)可以提供一種接收器驅動 式(receiver-driven)的同儕影音串流,其中提到有關節點 清單(peer lists)可以採用分散式雜湊表仰咖⑹㈣Hash Table,DHT)來搜尋。此技術沒有提及如何利用分散式 雜湊表的方法達到同儕之間相互協調負載平衡(l〇ad φ balance)的機制。 在專利文獻(US20090119734)—種時光回溯與即時同 儕視訊串流的分散式快取方法與系統(Distributed caehe algorithms and system for time-shifted, and live, peer-to-peer video streaming)中,如第二圖所示,視訊來源(vide〇 source)210經由一網路鏈接(network link)221,而連接至 一封包傳輸網路(packet transmission network)220,客戶 / # 節點端230也經由各自的網路鏈接,而連接至封包傳輸 網路220。此分散式快取系統200經由分散式快取在系統 之同儕部份裡共享的視訊率流的部份,來支援即時與時 光回溯的視訊串流,其中,客戶/節點端230的每—客戶 /節點j ’ l^jgN,需要將本身之資訊内容的可用性註冊 到一搜尋伺服器(search server)260,串流來源的搜尋也需 與搜尋伺服器260通訊,並使用一固定位元率串流,透過 初始播放位置(Initial Playback Position,IPP)與即時_串、;宁位 置(Live-Stream Position ’ LSP)的視訊快取策略(vide〇eaehe 201220767 policy)而取得較佳的搜尋效率。此方法仍需維護—個或多 個搜尋伺服器’且IPP或LSP僅將視訊串流概分為兩大 類,節點間無相互協調機制以達到負載平衡。 【發明内容】 揭露一同儕(Peer-to-Peer,P2P)即時串流系統與方法 實施範例。 在實施耗例中,所揭露者是關於同擠即時串流 系統,應用於一同儕網路中,此同儕網路中有一内容提 供者以及收看同一即時串流頻道的多個節點,此多個節點 的母一節點上備有此系統。此系統包含一標誌管理者模 組(token manager module)、一記錄發佈者模組(rec〇rding publisher module)、一記錄管理者模組(聰_職― module)、以及一同僭模組(p2p m〇dule)。此標誌管理者 模組處理至少-標誌、、通知此記錄發佈者模組發佈已記 錄影音串_容的訊息、以及指揮此記錄管理者模組記 錄串流資料。此記錄發佈者模組根據此標鍵管理者模組 的通知’透過此同儕模、组發佈&記錄影音串流内容的訊 息至此同_路巾。此罐管理者模㈣;理絲點的一儲 存空間’並且根據此標誌、管理者模、组的指揮,負責記錄 影音串流内谷至此健存空間。此同傅模組處理此多個節 點之間的同儕訊息及維護此同儕網路的結構。 在另-實施範例中,所揭露者是關於—同擠即時串 201220767 、財法,應用於-同儕網路上的即時串流系統。此方法 丨 &含··將收看同-即時串流頻道的多個節點組成一同傅 網路;當此多個節點中的一節點在收看一即時串流時,傳 遞-標錄,此標誌、上備有記錄此即時串流之部分資料的時 間資訊;收到此標誌的節點依此標誌、上的時間資訊,將此即 時串流上所指定的-時間區間的資料記錄於_儲存空間 後’以此時間區間為一鍵值發佈至此同儕網路;以及當此 多娜財的任-節點欲收看—時間闕即時串流時,以 鲁 此時間點為鍵值至此同儕網路中,取得擁有此時_之串 机負料的至少-節點的位址資訊,並向其中的_節點下載 此時間點對應的一時間區間内的串流資料。 茲配合下列圖示、實施範例之詳細說明及申請專利 範圍,將上述及本發明之其他目的與優點詳述於後。 【實施方式】 # 本揭露揭示一記錄同儕網路裡即時串流(丨ive streaming)内容的機制實施範例。此機制不僅考量如何保 持網路頻I:的負載平衡,也提供一種分散式管理方式來減 少同儕網路中的資源耗損,例如伺服器的添購或是儲存空 間的增加。 第二圖是一種以分散式雜湊表-網路(DHT-Network) 為基礎之影音串流的-個範例示意圖,與所揭露的某些 實施範例-致。第三圖的範例中,以五個節點為 201220767 ,例,五麵圈代表節點!至節點5 ,此五節點採用同—種 雜凑函數對應,加入(joinin)於同一即時串流頻道,而形成 一個DHT-網路300,其中箭頭代表影音串流。媒體從一 來源端(source)310串流至各個節點。DHT_網路3〇〇的形 狀可以是雜、献雜、嫩、或是錄,此範例為環 狀。每一節點有各自的節點識別碼如〇此仍),並且有上 一節點(predecessornode)以及下一節點(success〇rn〇de)。以 節點2為例,有上一節點1以及下一節點3。 在-實施範例中,將所有收看同一即時串流(Uve streaming)頻道的節點(peer)組成一同儕網路,以此同儕網 路為同儕網路建構方式,進行即時串流分享以及提供即時 串流時光回溯功H節點在收看_即時串流時,傳遞 一標誌(token) ’收到此標誌的節點將依照此標誌上的時間 資訊,記錄此即時_流上所指定之時間區間(timesl〇t)的資 料到一儲存裝置的一儲存空間扣㈣。儲存完成後,以此 # 時間區間為鍵值(key)發佈至此同僭網路中^當一節點欲執 射流時光回鱗’例如欲收看某—時間關即時串流 時’則以此時間點為鍵值,至此同儕網路中取得擁有該時 間點資料鱗齡址資訊,織向該節點下賴時間點的 記錄區間(recorded slot)内之串流資料内容(c〇ntent 〇f stream data) ° 此同儕網路中有一影音串流的内容提供者以及收看 同一即時串流頻道的多個節點,此多個節點的每一節點上 201220767 、,有-卿卩時串流祕。針對標部。㈣的處理方 式,每-節點包含相同的管理模組,例如採用一致的 辟管歧’域可崎纟贿顯化,而且不需 要伽耕賴㈣支援觀的處理。此觀管理者模 組會指示系統裡的一記錄管理者模組,何時錯存影音串 机内谷。-旦儲存完畢,就會交給系統裡的—記錄發佈 者模組’來發佈已記錄此影音串流内容。系統裡的記錄 發佈者触可贿過-同儕池,來鶴已記錄影音串 • 流魄的赠路上,讓此_職巾的記錄操 取者模組(recording retriever module)可讀取此影音串流内 容。而傳遞的標誌也會在各節點間流通。 如前述所述,影音串流内容會儲存到一儲存裝置的一 健存空間。此儲存裝置例如是隨機存取健存(Rand〇m
Access Memory,RAM)、或是軟/硬碟(disk)、或是其他 儲存設備。在本揭露一實施範例中,系統裡的記錄管理 參 者模組也需具備儲存此影音串流内容之健存空間的管理 功能6 第四圖是管理儲存空間(buffer management)的一個範 例示意圖’其中以第三圖之DHT網路拓墣(此加〇永 topology)為例,與所揭露的某些實施範例一致。第四圖 的範例中,在DHT網路300上’節點1至節點5收看同 一頻道’假設節點2在收看一即時串流時,傳遞一標誌 420給節點3,標誌420會在各節點間傳遞。每一節點保 201220767 留各自的-儲存空間410。在本揭露一實施例中,每一節 點之儲存空間410的大小是可調整的,例如可根據節點之 儲存設備容量大小的條件限制來調整。系統裡的記錄管理 者模組以時pa1單位將每—節點所對應的—辟空間⑽ 切割成多倾塊(chunk) ’來記錄影音串流資料,包括即 時的(live)部分影音枝資触過去齡的部分影音串流 資料,其中儲存部分影音串流資料的每一區塊稱為一記 錄區間。儲存蝴41〇中’每一已儲存完部分影音串流資 籲 料的記錄區間備有-標柳hunk header)來儲存被記錄之 影音_流内容的頻道資訊與時間資訊。以節點3為例, 有三個記錄區間’其中記錄區間431記錄著即時的部分 影音串流資料;而記錄區間432與433皆記錄著過去時段 儲存的部分影音串流資料,且分別備有標頭432a與 433a。例如標頭432a,儲存某一過去時段記錄之部分影 音串流的時間資訊。 鲁 由於母一串流對應一時間碼(time code) ’所以將記錄 區間以串流上的時間碼與頻道碼為鍵值,算出其雜湊值 (hash value)並存放於DHT網路300上。以串流上的時間 碼為識別碼與頻道碼算出其雜湊值,來搜尋DHT網路 300。 系統裡的記錄管理者模組可利用重複的記錄區間 (redundant slots)做為節點失敗復原(n〇de failure recovery)之 用。標誌、上的資訊(Token information)可包含一節點的上 201220767 :節點記錄即時枝之部分資料内容的起辦間與結束 時間。_帽資料内容的最小_單位為―固定長度的 時間’例如5秒(s_d)。記錄發佈者模組可以利用一記 錄區間之標聰_道資訊與_資訊為鍵值,藉由 DHT來決定出是那-節鱗有此記錄_裡之影音串流 資料的-節點清單(peer lists)。 承上述,在一實施範例中,收看同一即時_流頻道之 多個節點的每一節點上可備有一同儕即時串流系統❶如 第五圖的範例所示,每一節點上的同儕即時串流系統 5()〇可包含一標誌管理者模組51〇、一記錄發佈者模組 5^0、一 §己錄官理者模組530、以及一同擠模組540。標 誌管理者模組510管理至少一標誌、通知記錄發佈者模 組520發佈已記錄影音串流内容的訊息、以及指揮記錄 管理者模組530記錄争流内容。記錄發佈者模組wo根據 標誌管理者模組510的通知,透過同儕模組54〇發佈已 記錄影音串流内容的訊息到由此多個節點組成的一同儕 網路中。記錄管理者模組530管理此節點的一儲存空間, 並且根據標誌管理者模組510的指揮,負責記錄影音串 流内容至此儲存空間。同儕模組540處理此多個節點之 間的同儕訊息及維護此多個節點的同儕網路結構。 第六圖以一有限狀態機(finite state machine)的範例 示意圖來說明標誌管理者模組510處理此多個節點之標 誌傳遞的流程,與所揭露的某些實施範例一致。第六圖 201220767 之狀態示意圖的範例中,共有五個狀態,即加入頻道〇〇匕 channel)、產生標誌(create token)、持有標誌(h〇w t〇ken)、 等待回覆確收(wait for ACK)、以及等待下一標誌(wait f〇r next token)。當一節點加入一個即時視訊串流頻道時,此 節點即進入「加入頻道」狀態。標誌管理者模組51〇會 檢查此節點是否為進入該頻道之第一個節點,如標號61〇 所示。是的話’此節點則產生一標誌、,即處於「產生標 誌」狀態;否則,此節點進入「等待下一標誌」狀態。 產生標誌後,此節點進入「持有標誌」狀態,待找到 其他存在的節點(如標號620所示)及等到記錄串流内容 的時間(如標號630所示)到達後,則此節點記錄串流内容 並傳遞標誌給下一節點(如標號640所示),然後此節點進 入「等待回覆確收」狀態。在此節點收到下一節點傳送的 回覆確收之前,如果此回覆確收(ACK)延遲(delay)或遺失 (loss)(如標號650所示),則此節點進入「產生標誌」狀 # 態,也就是說,此節點必須重複之前的流程’以重新傳遞 一個新標誌。所以’標誌管理者模組可採用一有限狀態 機來描述此多個節點之標誌傳遞的處理流程。 假設此節點為節點A,下一節點為節點B,請一併參 考第七圖於標諸傳遞路徑(token delivery path)750中,此 兩節點之間握手(handshake)協定的範例示意圖。第七圖的 範例中,節點A在時間區間701内傳遞標誌給節點b, 以箭頭710表示。節點B收到此標誌後,在時間區間701 12 201220767 内向節點A回覆嫁收此標誌,以箭頭720表示。節點B 記錄完串流内容後,向節點A回覆記錄完成,以箭頭730 表示。 待節點A收到節點B之回覆記錄完成後,標誌管理 者模組510會通知節點A發佈已記錄影音串流内容的訊 息,如第六圖所示,節點A則停止記錄影音串流内容, 然後發佈已記錄影音串流内容的訊息(如標號660所 • 示)’然後節點A進入「等待下一標誌」狀態。節點A收 到此下一標誌(如標號670所示)後,進入「持有標誌」 狀態。在節點A收到下一標諸之前,如果此下一標誌、延 遲或遺失(如標號680所示),則節點A進入「產生標誌」 狀態,也就是說,節點A必須重複之前的流程。 承上述’第八圖是一範例流程圖,說明記錄影音串 流内容的流程,與所揭露的某些實施範例一致,其中以 • 則述節點A和節點B為範例來說明。參考第八圖,節點 A進入「持有標誌」狀態後,一旦記錄目前影音_流内 容的時間事件發生(以標號805表示),例如偵測到目前影 音串流所對應的時間碼已經到達所持有之標誌上之記錄 的起始時間,則節點A開始記錄目前影音串流内容至一 相對應的記錄區間,如步驟81〇所示。並且節點A傳遞 標就'給下-節點B(以標號815表示),節點A傳遞標誌 後’持續記錄目前影音串流内容至該相對應的記錄區間, 如步驟820所示。待節點A收到下-節點B之回覆記錄 13 201220767 元成(以標號825表示)後’郎點A則停止記錄影音串流内 容,如步驟830所示。 節點A傳遞標誌給節點B前’會先修改此標誌的時 間"k sfl再將此標諸傳遞給節點B。而節點b收到節點a 傳遞的標誌後,同樣地’節點B等到記錄目前影音串流 内容的時間事件發生時,開始記錄目前影音_流内容至一 相對應的記錄區間’直到完成記錄目前影音串流内容至其 • 相對應的記錄區間為止,然後向節點A回覆記錄完成。 依此’節點持續儲存串流資料直到收到下一節點的回覆記 錄元成為止。如此,就可以產生重複的記錄區間,來降低 影音_流區塊遺失的可能性,以利節點失敗復原(n〇de failure recovery) ° 在本揭露一實施例中,採用標誌分散管理方式,也 就是說,同一同儕網路中每一節點採用同一標誌管理者 • 模組510,以一致的處理方式來管理標諸,包括如管理 標誌之加入(addition)、刪除(deletion)、例外的(exception) 處理等,例外的處理例如是標誌被延遲或遺失等之錯誤 復原處理(error recovery handling),如此可以簡化系統架 構,並且不需要藉由額外的模組來支援標誌的處理。透 過標誌管理者触训_揮,觀上之靖的起始時 間會私示系統中的記錄管理者模組53〇何時儲存影音串 流内容至節點各自相對應的儲存空間,當節點相對應的儲 存空間已經被填滿(ft叩時,此儲存空間内之舊資料會被新 201220767 記錄(newrecord)的影音串流内容更新(updated)。一旦節點 將。P刀衫音串流内谷儲存完畢,就會交給記錄發佈者模 組處理。標財在各節點之間流通,而觀、上的資訊載 有上一節點記錄部分影音串流内容的起始時間與結束時 間。換句話說’標誌管理者模組51〇透過標誌傳遞來規 範在同-同儕網路中多個節點之那些節點必須記錄被切 割的多個區塊的那些區塊中的部分影音串流内容。 第九圖是一範例示意圖,說明節點如何在一同儕網 路中發佈/操取節點清單的流程,與所揭露的某些實施範 例一致。在第九圖的範例中,一同儕網路中有五個節點, 其節點指標(node index)分別為R1〜R5。根據關標記! 的順序與流向(以實線箭頭表示),點Μ先將其已儲存 影音串流内容的相關訊息發佈至一節點把。節點汜將 節點R3的Π>位址資訊及記錄_流資料内容的起始時間與 、-束時間紀錄於-節點清單(peer㈣。節點W的選擇是 透過-DHT及配合同儕模组54〇所採用的一演算法來. 决疋。此DHT的鍵值是由頻道碼與時間碼作咖⑺邮 來決定,而時間碼的值是隱含在影音格式内,例如可選 f mpeg π的影音格式。根據圓圈標記2與3的順序與 ,向(以虛線箭頭表示),節點R4也是透過相同的聰 定址出’再透過同儕模組54〇找到正確的紀錄節點(即節 ]、R5)並將節點R5紀錄的節點清單傳回此發出掏取要 求的節點R4。根據®圈標記4的順序與流向(以虛線箭 頭表不)’即點R4再根據此回傳的節點清單裡的資訊, 201220767 找到影音幅内容存放的正雜置,即節點幻,並從節 點R3取得所要求的影音串流内容。 第十圖是—範例示_,說明如何將-影音串流發 佈至節點清單錢節輯單取射U彡音核存放的節 點’與所揭露的某些實施齡卜致。參考第十圖,由於 母-影音幅對應—時間碼,所靖__影音検對應的時 間碼1010作為同一分散式雜凑表(DHT)的輸入鍵值,透 過此DHT,找出一指標1〇2〇,指標刪結合一對應表 (mappmg table),例如對應表1〇3〇,就是存放此影音串 流的節點清單卿。從節點清單丨㈣的内容裡,就可 得知從那些節點可取得所要求的料枝内容。對應表 1030的每一列裡記錄的資訊至少包括影音串流之記錄的 起始時間與完成時間,及其相對應之節點指標;例如,對 應表1030的一列裡的資訊為節點指標R3(即記錄發佈者 模組)之記錄影音串流的起始時間S1與完成時間£1。 第十一圖、第十二圖、及第十三圖分別說明第六圖 之有限狀態機的持有標誌狀態、等待回覆確收狀態、及 專待下一標諸狀態,與所揭露的某些實施範例一致。 參考第十一圖的範例,一節點可從「產生標誌」狀 態進入「持有標热」狀態1100,也可從「等待下一標誌」 狀態進入「持有標誌」狀態1100。當一節點從「產生標 誌」狀態進入「持有標誌」狀態1100,在「持有標誌」 201220767 狀態1100中,先檢查是否有其他存在的節點(步驟 1102)。若此節點是從「等待下—標諸」狀態進入「持有 標誌」狀態1100,則此節點並會先收到此下一標諸(以標 號1120表示)後,再進入「持有標钱」狀態1100,並且 會先回覆確收標誌、給上-_(步驟UG1),再進行步驟 1102。 若沒有其他存在的節點時,則持續步驟11〇2,直到 # 有其他存在的節點。然後’此節點檢查是否收到下-標 誌、(步驟11〇4) ’是的話,此節點刪除此下一標誌(步驟 11 〇 6)及檢查記錄串流内容的時間事件是否發生(步驟 1108) ’當此節點沒有收到下一標誌時,此節點進行步驟 謂。若記錄㈣内容鱗間事件未發生,則此節點返回 步驟1102。記錄串流内容的時間事件發生時,此節點 開始記錄串流内容並傳遞標誌給下一節點(步驟111〇), 然後此節點進入「等待回覆確收」狀態。 參考第十二圖的範例,一節點可從「持有標諸」狀 態進入「等待回覆確收」狀態1200,然後從「等待回覆 確收」狀態1200進入「等待下一標諸」狀態或是「產生 標誌」狀態》當此節點進入「等待回覆破收」狀態12〇〇, 先檢查是覆確收(步驟12G2V若㈣回覆確收, 此節點檢查串流内容完成記錄的時間事件是否發生(步驟 1206)。若未收到回覆確收,則此節點檢查其計時器的時 間是否到臨(步驟12〇4) ’若未到臨,則持續進行步驟 201220767 1202 ’直到此節點的計時器的時間到臨為止,然後此節點 進入「產生標誌」狀態。 若串流内容完成記錄的時間事件尚未發生,則持續進 行步驟1206 ’直到發生串流内容完成記錄的時間事件, 然後回應記錄完成給上一節點(步驟12〇8)。此節點檢查是 否收到來自它的下一節點的記錄完成的回應(步驟 1210),是的話,此節點發佈已記錄影音串流内容的訊息 並停止記錄串流内容(步驟1212),然後進入「等待下一 橾s志」狀態。若此節點沒有收到來自它的下一節點的記錄 π成的回應,此節點檢查其計時器的時間是否已到臨(步 驟1214) ’是的話,此節點進入「產生標誌」狀態,否則 返回步驟1210。 參考第十二圖的範例,一節點可從「等待回覆確收」 _進入「等待下-標認」狀態13⑻,織從「等待下 -標誌'」狀態議進入「持有標誌、」狀態献「產生標 認」狀態。當此節點進入「等待下一標該」狀態13〇〇, 先檢查其計時器的時間是否已到臨(步驟D〇2),是的話, 此節點進入產生標諸」狀態;不是的話,此節點檢查是 否收到下-標諸(步驟1304)。收到下一標誌的話 ,此節 點進入「持有觀、」狀態;關,此_返回步驟13〇2。 第十四圖、第十五®、及第十六w分別說明標誌、管 理的二種情況’相為正常情況、回覆確收延遲/遺失情 201220767 況、及標諸延遲/遺失情況’其中圓圈代表標誌 ,同一圖 案的圓圈代表同-觀,虛線圓圈代表回覆確收標總, 與所揭露的某些實施範例一致。 參考第十四圖之正常情況的範例,節點A在其時間 區間Cl if欠到標諸(如標號141〇所示)後,回覆確收標誌 (如標號1412所tf)給上-節點,再傳遞標諸(如標號· 所示)、’、。下一節點B。然後,節點A在其時間區間Ο與 C3記錄影音核内容。節點B在其_區間〇收到標 $如標號1420所示)後,在其時間區間C2回覆確收標 —上一即點A(如標號1422所示)’再傳遞標誌給其下 節點(如;號1424所示)。然後,節點b在其時間區間 C3與C4記錄影音串流内容。 參考第十五圖之回覆雜延遲/遺失情況的範例,節點 A在其時間區間a傳遞標誌(如標號⑽所示)給下一 節點B。_ b在其時間關α收到此標對如標號 1520所示)後’但在其時間區間C2延遲/遺失給上一節點 A的回覆確收標誌(如標號1522所示),並傳遞標誌給其 下一節點(如標號1524所示)。根據之前所述,當節點a 之計時器的時間到臨時,節點A在其時間區間C4再產 生標誌,並再傳遞標誌給下一節點B(如標號1512所 不)。也就是說’如果回覆確收標誌被延遲或遺失,則上 一節點A之計時器的時間會到臨,表示發生延遲或遺失 事件,而上一節點A會再產生標誌,並重傳標誌。 201220767 =節點B在其時咖C3再收到標諸(如標號 所丁)後在其時間區間C3回覆確收標誌、給上-節 點A(如標號1528所示),再傳遞標諸給其下-節點(如 標號1529所示)。然後’節點B在其時剛cwC5 -景彡音。⑽點A延長記縣音串流内容的 時間區間至鱗間區間C4。 /考第十/、圖之標諸'延遲/遺失情況喊例,節點A U間區間C2傳遞標諸給下—節點B(如標號⑹〇 所丁)C節點B在其時間區間〇與〇都沒有收到標 〜根據之刚所述’當節點A之計時器的時間到臨時, 節點A在其時間區間a再產生標諸’並再傳遞標諸給 下一節點B(如標號⑹2所外也就是說,—旦親標 ⑽被傳送的時間’則上—節點A之計時器的時間會到 臨表示發生標s志失敗事件,則上一節點A會再產生標 該’並重傳標H如果在—定時間内,節點B收到多個 重覆的標酬節點B會將重覆的標驯除,來控制標諸 的成長,以避免太多的標誌傳遞。
然後,節點B在其時間區間c3收到標識如標號 1620所示)後,在其時間區間C3回覆確收標諸給上一 節點A(如標號1622所示),並傳遞標誌給其下一節點(如 標號1624所示)。若節點B在同一時間區間C3又收到 節點A上次延遲的標誌(如標號1626所示),則節點B e 20 201220767 將此延遲的標舰為重複並·。•錢,節點B在其時 間區間C4與C5記錄影音串流内容。而節點A記錄影音 串流内容的時間區間也延長至其時間區間w。 從第十四圖、第十五圖、及第十六圖可以窥知, 本揭露-實施财,觀管理無論在正常情況下或在異 常情況下,都可發送多個標如記顧複的㈣,如此 可降低影音核眺遺失的可能性。並且,本揭露一實 施例中,縣管補可_乡個縣的產生(g_ti〇n) 與抑制(suppression),—方面加強即時影音串流服務的 可靠度㈣iability)’另-方面也使每_節點記錄影音串流 内容所使用之儲存空間達到最佳化。 承前述有限狀態機之各狀態的描述、標结傳遞的流 程、及同儕即時串流系、統5〇〇之各模組的運作,皆說明 了標誌會在同僭-拓墣網路上的各節闕流通。也就是 說,本揭露-實施範例,針對標料是所有影音串流資 料的儲存可採用分散式管理。第十七暇同儕即時串流 系統的一個應用範例的示意圖,與所揭露的某些實施範 例一致。 第十七圖的應用範例是一即時(丨ive)個人錄影 (personal video recording,pVR)系統 17⑻。個人錄影系 統1700中,每一節點包含相同的標誌分散管理㈣印 distribution management)模組,針對標誌的處理方式一 21 201220767 致。每一節點有各自_存空間,例如是隨機存取儲存 或是軟/硬鮮,粉梅彡音㈣。當_是-記錄 發佈者嫌麵_,彡音串朗容的資訊會公傅 於:卽點清單’或從—節點清單可取得錯存此影音串流 内谷之即點位址資訊,此節點清單可儲存於—隨機存取 儲存、或是軟/硬碟、或是其他的儲存裝置。即時個人 錄影系統17GG _的所謂點形成-同儕網路。 換句話說,即時個人錄影系統-Π00巾,内建儲存 媒體(儲存空間儲存影音串流内容),採物4分散^ 理,每-節目各自形成一同脩網路,每—節點各自擁有 -標誌、管理者模_—同轉組。讀賞者欲收看某— 時間點的即時串流時,必須先加入同儕網路,然後以該時 間點為鍵值至此同儕網路中取得擁有該時間點資料的節 點位址資訊,並向該節點下載_點區間内的串流資料。 如此’觀賞者可以自由細·_。㈣個人錄影系 統謂還可包括-檔案管理模組,依據過去觀看節目 的記錄建立使用者偏好檔案,也可根據使用者對節目的 偏好设定自動錄影。 承上述’以第十八圖之範例流程圖,來說明本揭露 之同儕即時串流方法—實施例,與所揭露的某些實施範 例-致。第十八圖之範例中’將收看同—即時串流頻道 的多個節點組成-同儕網路’如步驟所示。當此多 個節點中的-節點魏看一即時串流時,傳遞—標^,此 22 201220767 標誌上備有記錄此即時串流之部分資料的時間資訊,如步 驟1820所示。收到此標誌的節點依此標諸上的時間資訊, 將此即時串流上所指定的一時間區間的資料記錄於一儲 存二間後,以此時間區間為一鍵值發佈至此同儕網路,如 步驟1830所示。當此多個節點中的任一節點欲收看一時 間點的即時串流時,以此時間點為鍵值至此同儕網路中, 取得擁有此時間點之串流資料的至少一節點的位址資 訊,並向其中的一節點下載此時間點對應的一時間區間内 籲 的串流資料,如步驟1840所示。 步驟1810中,此多個節點採用同一種雜湊函數對 應’加入於同一即時串流頻道,而形成一個DHT_網路, 並且每一節點可以有一上一節點以及一下一節點,如第 七圖的範例。步驟1820中,於標誌傳遞的路徑中,傳遞 與收到此標誌的節點之間是以一種握手方式來協定,如第 三圖的範例。每—節點採用同一分散式管理方式來管理 鲁 至少、包括管理標誌、之力σ入、刪除、及錯誤復原處 理,如前述所載,不再重述。標誌管理的三種情況(正 *情況、回覆確收延遲/遺失情況、及標誌延遲/遺失情況) 如第十四圖、第十五圖、及第十六圖的範例說明。 步驟1830中,儲存空間的管理,如第四圖的範例說 明;記錄影音串流内容的流程,如第人圖的範例說明。而 如何在同_路巾發佈核資料如第九圖的範例說明, 可透過刀散式雜湊表的對應,及配合一演算法來選擇 23 201220767 紀錄卽點,傳遞縣㈣點將其㈣存影音串流内容 的相關訊息發佈至此紀錄節點;然後,此紀錄節點將發佈 相關訊息的節點及記錄串流資料内容的—起始時間與一 結束時間紀騎-節_單,舰節財單取得此影 音串流存放的節點如第十_範例說明,邱重述。 綜上所述’揭示_記錄即時串軸容的機制實施範 例,係架構於同儕的網路拓墣。縣揭露的一實施範例 中’可將所有收看同-gp時串流頻道的節點組成一同倩網 路’以此同儕網路為同儕網路建構方式,進行即時串流分 享以及提供即時串鱗細溯功能。此同儕即時串流技術 能支援多種裝置或系統,例如個人電腦(PC)、娜器、 行動裝置(mobile device)、個人數位助理(p⑽nai Digitai Assistant ’ PDA)、個人錄影系統等。
以上所述者僅為揭示之實施範例,當不能依此限定 本發明實施之範圍。即大凡本揭露申請專利範圍所作之 均等變化與修飾,皆應仍屬本發明專利涵蓋之範圍。 201220767 【圖式簡單說明】 第一圖疋一種即時群播同儕視訊串流平台的一個範例示 意圖。 第二圖是一種時光回溯與即時同儕視訊串流的分散式快取 方法的一個範例示意圖。 第三圖是一種以分散式雜湊表單-網路為基礎之影音串流 的一個範例示意圖,與所揭露的某些實施範例一致。 第四圖是管理儲存空間的一個範例示意圖,其中以第三圖 • 之網路拓撲為例,與所揭露的某些實施範例一致。 第五圖是同儕即時串流系統的一個範例示意圖,與所揭 露的某些實施範例一致。 第六圖以一狀態示意圖的範例來說明標誌管理者模組處 理多個節點之標訪傳遞的流程,與所揭露的某些實施範例 一致。 第七圖是一範例示意圖,說明標誌傳遞時,兩節點之間的 握手協定’與所揭露的某些實施範例一致。 • 帛八圖是一範例流程圖,說明記錄影音串流内容的流程, 與所揭露的某些實施範例一致。 第九圖是一範例示意圖,說明節點如何在一同儕網路中發 佈/擷取節點清單’與所揭露的某些實施範例一致。 第十圖是一範例示意圖,說明如何將一影音串流發佈至 節點清單或從節點清單取得此影音串流存放的節點,與 所揭露的某些實施範例一致。 第十一圖是一範例示意圖,說明第六圖之有限狀態機的 持有標誌狀態,與所揭露的某些實施範例—致。 25 201220767 第十二圖是一範例示意圖,說明第六圖之有限狀態機的 等待回覆確收狀態,與揭露的某些實施範例一致。 第十三圖是一範例示意圖,說明第六圖之有限狀態機的 等待下一標誌狀態,與所揭露的某些實施範例一致。 第十四圖是一範例示意圖,說明標誌管理的正常情況, 與所揭露的某些實施範例一致。 第十五圖是一範例示意圖,說明標誌管理的回覆確收延 遲/遺失情況與所揭露的某些實施範例一致。 • 第十六圖是一範例示意圖,說明標誌管理的標誌延遲/遺 失情況,與所揭露的某些實施範例一致。 第十七圖是同儕即時串流系統的一個應用範例的示意 圖,與所揭露的某些實施範例一致。 第十八圖是一範例流程圖,說明同儕即時串流方法,與 所揭露的某些實施範例一致。 【主要元件符號說明】 100即時群播同儕視訊串流平台 102内容提供者 104公用網路 106攝影機 108-114 節點 116串流代理 2〇〇分散式快取系統 210視訊來源 220封包傳輸網路 221網路鏈接 230客戶/節點端 260搜尋伺服器 3〇〇分散式雜湊表單_網路 1-5節點 26 201220767 310來源端 410 —儲存空間 420標誌 431記錄著即時的部分影音串流資料的記錄區間 432、433記錄著過去時段儲存的部分影音串流資料的記錄區間 432a、433a記錄區間的標頭 a 5〇0同儕即時串流系統 M〇標諸管理者模組 52〇記錄發佈者模組 53〇記錄管理者模組
540同儕模組 610檢查此節點是否為進入該頻道之第一個節點 620找到其他存在的節點 630等到記錄_流内容的時間 64〇記錄串流内容並傳遞標誌給下一節點 650ACK延遲或遺失 660發佈已記錄影音串流内容 670收到下一標誌、 680下-標誌、延遲或遺失 701、702時間區間 710傳遞標誌
72〇回覆確收此標該、 730回覆記錄完成 75〇標魏傳遞路徑 805。己錄目前影音串流内容的時間事件發生 810開始書己錄目前影音串流内容至一相對應的記錄區間 815傳遞標誌給下一節點 820持續記錄目前影音串流内容至該相對應的記錄區間 825收到下__節點之回覆記錄完成 83〇停止記錄影音串流内容 27 201220767
Ri〜R5節點指標 1020指標 1040節點清單 1100「持有標誌、」狀態 1101 1102檢查是否有其他存在的節點
檢查疋否收到下-標鼓、1106刪除此下一標諸 1108檢查記料軸容的時間事件是否發生 1110開始辑枝内容並職標麟下一節點 1200「等待回覆確收」狀態謙檢查是否收到回覆確收 1204檢查其計時器的時間是否到臨 1206檢查串流内容完成記錄的時間事件是否發生 1208回應記錄完成給此節點 檢查是否收到來自它的下一節點的記錄完成的回應
1010時間碼 1030對應表 回覆確收標誌給上一節點 1212此節點發細己錄影音串流η容的訊息並停止記錄串流内容 1214檢查其計時器的時間是否到臨 1300等待下一標誌」狀態 1302檢查其計時器的時間是否已到臨 1304檢查是否收到下一標誌? Μ10節點Α收到標誌 1414節點A傳遞標誌 1422節點B回覆確收標誌 1510節點A傳遞標誌 1412節點A回覆確收標誌 142〇郎點B收到標誌 1424喊6傳遞標誌 152〇卽點B收到標誌 28 201220767 1522節點B延遲/遺失回覆確收標誌 1S24節點b傳遞標誌 1512節點a再產生標誌,並再傳遞標誌 1526節點B再收到標誌 1528節點B回覆確收標誌 1529節點b再傳遞標誌 1610節點A傳遞標誌 1612節點A再產生標誌並再傳遞標誌給 162〇節點B在收到標誌 1622節點B回覆確收標誌 1624節點B傳遞標誌 1626節點B收到延遲的標誌 1700即時個人錄影系統 1810將收看同一即時串流頻道的多個節點組成一同儕網路 刪當此多個節財的_節點在收看,時串流時,傳遞一標諸, 此6患上備有記錄此即時串流之部分資料的時間資訊 1830收到此縣的節點依此銳上的咖資訊,將此即時串流上所 指定的一時間區間的資料記錄於一儲存空間後,以此__ 為一鍵值發佈至此同儕網路 1840當此多個節點中的任—節點欲收看—時間點的即時串流時,以 此時間點為鍵值至此同僭網路中,取得擁有此時間點之串流資 料的至少-節點的位址資訊,並向其中的—節點下載此時間點 對應的一時間區間内的串流資料 29
Claims (1)
- 201220767 七、申請專利範圍: 1.種同价即時申流系統,應用於一同傅網路中,該 中有内各提供者以及收看同一即時串流頻道的多 2點,該多個節點的每__上财勒統,該系統 -標誌、管理者模組,管理至少一標諸; 同麵組’處理該多個節點之間的同傅訊息及 同儕網路的結構; 一記料佈者模組,透過該同儕模組發佈已記錄影音_ 流内谷的訊息到該同儕網路中;以及 -記錄管理者模組,管理該節點的一儲存空間,並且根據 該標誌'管理者池_揮,貞責記轉音㈣内容至該 儲存空間; 其中’該標誌管理者模組通知該記錄發佈者模組發佈已 記錄影音串如容_息及指揮該記鮮理者模組記錄 串流資料。 2. 如申請專利制第丨項所述之同儕即時串絲統,其中 該多個節狀每-_撕觸_存郎的大小是可 調整的。 3. 如申請專利細第1項所述之同儕即時串流系統,其中 當該多個節點之每一節點相對應的該储存空間被填滿 時,該儲存空間内之舊資料會被新記錄的影音串流内容 更新。 4.如申請專利範圍第j項所述之同儕即時串流系統,其中 該多個節點之每-節點採用該標誌管理者模組,並以一 201220767 相同的處理方式來管理標諸,至少包括管理標誌之加 入、刪除、及錯誤復原處理。 如申明專利範圍第1項所述之同儕即時串流系統,其中 該標誌、管理者模組以時間單位將該多個節點之每一節 Z對應_贿__成乡鶴塊,來記錄影音串 流資料’並且透過標魏傳遞來規範該多個節點之那些節 點必須記錄該被切割的多個區塊的那些區塊中的部分影 音串流内容。6·如申請專利顧第丨項所述之同儕即時串流系統,其中 該標諸管理者模組以-有限狀態機來描述該多個節點 傳遞該至少一標誌的處理流程。 7·如申請專利職P項所述之同儕即時串流系統,盆中 解個節點之每—節點有相對應的-上-節點及-下— 節點,而該多個節點傳遞的至少_標諸中,每一標總包 括-節點之上-節點記錄即時串流之部分資料内容的— 起始時間及一結束時間的資訊。 8. 如申請專利範圍第5項所述之同儕即時_統,其中 _存空間中,每-已儲存完部分影音串流資料的記錄 區間備有-標頭,來贿被鱗之f彡料如容的頻道 資訊與時間資訊。 9. 如申請專利細第8項所述之同儕即時㈣系統,㈠ 魏錄發佈者模組利用-記錄區間之標頭裡的頻道資% 與時間資訊為鍵值,藉由-分散式雜凑表來決定出那1 節點存有該記錄_裡之影音_料的—節點清單。 瓜如申請專利細第9項所述之同擠即料㈣統, 31 201220767 该郎點清單至少包括該記錄_所料之影音串 與完糊,及該記簡者__ 應之郎點指標的資訊。 同儕即時串流方法,剌於__網路上的即時爭 々《·系統,該方法包含: f收看同-即時串流頻道的多個節點組成一同儕網路,當該多個節點中的一_在收看一即時串流時,傳遞1 心該標誌'上備有記錄該即時串流之部分資料的時間資訊下 收到該的節點依該標認上的時間資訊,將該即時㈣ 上所指定的區間师料記_—儲存空間後,^ 時間區間為-鍵值發佈至該同儕網路;以及 當該多個節點中的任一節點欲收看-時間點的即時卜 時’以該時間點為鍵值至該同儕網路令,取得擁有該時: 點之串流資料的至少-節點的位址資訊,並向其中的1 點下載該時間點對應的_時駆_的串流資料。Ρ 泛如申請專利範圍第U項所述之同儕即時串流方法,复中 該多個節點採用同-種雜凑函數對應,加场該即時争流 頻道,而形成-個分散式雜絲,路,並且每_節點^ 一上一節點以及一下—節點。 !3.如申請專利範圍第U項所述之同僚即時争流方法,其中 於該標諸傳遞的路徑中,傳遞該標諸的節點與收到該標 tfe的節點之間是以-種握手方式來協定。 14.如申請專利細第12項所述之同儕即時串流方法,其 中該時間區間的資料記錄於該儲存空間還包括: 傳遞該標諸'的節點將該標諸傳遞給其下—節點後,持續 32 201220767 、·、、引ι9串細容至_相對應的記龜間;以及 覆記錄完成 π知φt 節點則停止記錄該目前影音串流内容。 •如申4利範圍第12項所述之同儕即時㈣方法,其中 以該時間師為—鍵懈佈至制侧路還包括:透過:分散式雜凑表的對應,及配合一演算法來選擇一 紀錄郎點’傳遞該標點將其已儲存影音串流内容 的相關訊息發佈至該紀錄節點;以及 16. 該紀錄節點將該發佈相關訊息的節點及記錄串流資料内 容的一起始時間與—結束時間紀錄於-節點清單。 如申^專利|&圍第U項所述之同儕即時串流方法,其中 該節點清單是町财絲產生: 、 的一 將&曰串流對應的一時間碼作為該分散式雜凑表 輸入鍵值; 透過該分散式雜凑表找出一指標,將該指標結合—對應 表而產生存放該影音串流的節點清單。 α 17. 如申請專利範圍第16項所述之同儕即時串流方法,其 中該輸入鍵值是由一頻道碼與一時間碼來決定。、 18. 如申請專利範圍第η項所述之同儕即時串流方法,其中 該錯誤復原處理至少包括回覆確收延遲且/或遺失情 況,以及標誌延遲且/或遺失情況的處理。 月 19·如申請專利範圍第9項所述之同儕即時串流方法,其中 該串流資料的儲存與管理皆採用分散式管理方式。、 33
Priority Applications (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW099137965A TWI415427B (zh) | 2010-11-04 | 2010-11-04 | 同儕即時串流系統與方法 |
| CN201010597241.0A CN102469153B (zh) | 2010-11-04 | 2010-12-10 | 点对点实时串流系统 |
| US13/109,199 US8726327B2 (en) | 2010-11-04 | 2011-05-17 | System and method for peer-to-peer live streaming |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| TW099137965A TWI415427B (zh) | 2010-11-04 | 2010-11-04 | 同儕即時串流系統與方法 |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| TW201220767A true TW201220767A (en) | 2012-05-16 |
| TWI415427B TWI415427B (zh) | 2013-11-11 |
Family
ID=46020903
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| TW099137965A TWI415427B (zh) | 2010-11-04 | 2010-11-04 | 同儕即時串流系統與方法 |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US8726327B2 (zh) |
| CN (1) | CN102469153B (zh) |
| TW (1) | TWI415427B (zh) |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| TWI478538B (zh) * | 2012-11-28 | 2015-03-21 | Inventec Corp | 伺服器系統 |
| TWI492581B (zh) * | 2013-05-17 | 2015-07-11 | Univ Nat Sun Yat Sen | 即時影音串流的群播重傳系統及其方法 |
| US9674282B2 (en) | 2012-09-28 | 2017-06-06 | International Business Machines Corporation | Synchronizing SLM statuses of a plurality of appliances in a cluster |
| US10430120B2 (en) | 2014-07-30 | 2019-10-01 | Industrial Technology Research Institute | Data object management method and data object management system |
| TWI706672B (zh) * | 2016-08-01 | 2020-10-01 | 瑞軒科技股份有限公司 | 多媒體播放方法 |
Families Citing this family (24)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9965640B1 (en) | 2011-09-23 | 2018-05-08 | PubNub Inc. | Real-time distribution of messages via a network with multi-region replication in a hosted service environment |
| CN103294938B (zh) * | 2012-02-29 | 2016-08-24 | 国际商业机器公司 | 访问请求验证方法及系统、授权信息生成方法、硬件设备 |
| US9154855B2 (en) * | 2012-07-13 | 2015-10-06 | Telibrahma Convergent Communications Pvt. Ltd. | Method and system for providing location based content delivery by embedding hidden data in a multimedia file |
| US9549024B2 (en) | 2012-12-07 | 2017-01-17 | Remote Media, Llc | Routing and synchronization system, method, and manager |
| DE102013209940A1 (de) * | 2013-05-28 | 2014-12-04 | Conti Temic Microelectronic Gmbh | Kamerasystem für Fahrzeuge |
| CN104283927A (zh) * | 2013-07-09 | 2015-01-14 | 广州华久信息科技有限公司 | 一种基于无线局域网的信息实时分享方法 |
| US10198777B2 (en) | 2013-12-06 | 2019-02-05 | Remote Media, Llc | System, method, and application for exchanging content in a social network environment |
| CN104717545A (zh) * | 2013-12-17 | 2015-06-17 | 乐视网信息技术(北京)股份有限公司 | 一种视频播放方法及装置 |
| CN104753984A (zh) * | 2013-12-26 | 2015-07-01 | 乐视网信息技术(北京)股份有限公司 | 一种数据传送方法及装置 |
| EP3215951A4 (en) * | 2014-11-04 | 2018-04-04 | GT Systems Pty Ltd | Media distribution & management system & apparatus |
| US9955444B1 (en) | 2014-11-05 | 2018-04-24 | PubNub Inc. | Data synchronization across multiple devices connecting to multiple data centers |
| CN104918065A (zh) * | 2015-05-25 | 2015-09-16 | 南京邮电大学 | 基于rtsp实现移动音视频直播的系统及方法 |
| US10911503B2 (en) | 2015-08-27 | 2021-02-02 | Drop In, Inc. | Methods, devices, and systems for live video streaming from a remote location based on a received request utilizing keep alive messages |
| US9930399B2 (en) | 2015-12-21 | 2018-03-27 | At&T Intellectual Property I, L.P. | Digital video recorder as a content delivery server |
| US10666351B2 (en) * | 2016-07-21 | 2020-05-26 | Drop In, Inc. | Methods and systems for live video broadcasting from a remote location based on an overlay of audio |
| US10057337B2 (en) | 2016-08-19 | 2018-08-21 | AvaSure, LLC | Video load balancing system for a peer-to-peer server network |
| US10667016B2 (en) * | 2017-06-19 | 2020-05-26 | Electronics And Telecommunications Research Institute | Peer and method for adjusting starting point of the peer |
| US10820057B2 (en) * | 2018-11-07 | 2020-10-27 | Nvidia Corp. | Scalable light-weight protocols for wire-speed packet ordering |
| US11108704B2 (en) | 2018-12-04 | 2021-08-31 | Nvidia Corp. | Use of stashing buffers to improve the efficiency of crossbar switches |
| CN113126888B (zh) * | 2020-01-15 | 2024-04-19 | 伊姆西Ip控股有限责任公司 | 用于存储管理的方法、设备和计算机程序产品 |
| US11621986B2 (en) | 2021-06-29 | 2023-04-04 | Western Digital Technologies, Inc. | Peer-to-peer media streaming from an edge data storage device to a browser |
| US11770215B2 (en) | 2022-02-17 | 2023-09-26 | Nvidia Corp. | Transceiver system with end-to-end reliability and ordering protocols |
| US12177293B2 (en) | 2022-06-29 | 2024-12-24 | SanDisk Technologies, Inc. | Video surveillance systems using out of band key exchange |
| US11997364B2 (en) | 2022-06-29 | 2024-05-28 | Western Digital Technologies, Inc. | Peer-to-peer data transfer for video on demand from an edge data storage device to a browser |
Family Cites Families (29)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2002008948A2 (en) | 2000-07-24 | 2002-01-31 | Vivcom, Inc. | System and method for indexing, searching, identifying, and editing portions of electronic multimedia files |
| US7536704B2 (en) | 2001-10-05 | 2009-05-19 | Opentv, Inc. | Method and apparatus automatic pause and resume of playback for a popup on interactive TV |
| AU2003214975A1 (en) | 2002-02-01 | 2003-09-02 | John Fairweather | System and method for navigating data |
| US7093004B2 (en) | 2002-02-04 | 2006-08-15 | Datasynapse, Inc. | Using execution statistics to select tasks for redundant assignment in a distributed computing platform |
| US20050080858A1 (en) * | 2003-10-10 | 2005-04-14 | Microsoft Corporation | System and method for searching a peer-to-peer network |
| US7522774B2 (en) | 2004-03-10 | 2009-04-21 | Sindhara Supermedia, Inc. | Methods and apparatuses for compressing digital image data |
| US7174385B2 (en) * | 2004-09-03 | 2007-02-06 | Microsoft Corporation | System and method for receiver-driven streaming in a peer-to-peer network |
| US7664109B2 (en) * | 2004-09-03 | 2010-02-16 | Microsoft Corporation | System and method for distributed streaming of scalable media |
| US20070130597A1 (en) | 2005-12-02 | 2007-06-07 | Alcatel | Network based instant replay and time shifted playback |
| WO2008012488A2 (en) * | 2006-07-24 | 2008-01-31 | Nds Limited | Peer-to-peer set-top box system |
| WO2008024084A1 (en) | 2006-08-24 | 2008-02-28 | Idealab Llp | A system and method for recording television and/or radio programmes via the internet |
| US8041942B2 (en) * | 2006-09-05 | 2011-10-18 | Panasonic Corporation | Robust peer-to-peer networks and methods of use thereof |
| WO2008038280A2 (en) * | 2006-09-28 | 2008-04-03 | Rayv Inc. | System and methods for peer-to-peer media streaming |
| US20080133767A1 (en) | 2006-11-22 | 2008-06-05 | Metis Enterprise Technologies Llc | Real-time multicast peer-to-peer video streaming platform |
| KR101105850B1 (ko) * | 2007-02-28 | 2012-01-13 | 삼성전자주식회사 | P2p 네트워킹을 통한 고품질 콘텐츠 제공 시스템 및 방법 |
| CN101345638B (zh) * | 2007-07-12 | 2011-06-22 | 中兴通讯股份有限公司 | 支持时移业务的对等系统 |
| US9003464B2 (en) * | 2007-08-27 | 2015-04-07 | At&T Intellectual Property I, L.P. | System and method of verifying a video blackout event |
| US7979419B2 (en) | 2007-11-01 | 2011-07-12 | Sharp Laboratories Of America, Inc. | Distributed search methods for time-shifted and live peer-to-peer video streaming |
| US7975282B2 (en) | 2007-11-01 | 2011-07-05 | Sharp Laboratories Of America, Inc. | Distributed cache algorithms and system for time-shifted, and live, peer-to-peer video streaming |
| US8572112B2 (en) | 2007-11-02 | 2013-10-29 | Microsoft Corporation | Syndicating search queries using web advertising |
| US8924998B2 (en) * | 2007-11-16 | 2014-12-30 | Thomson Licensing | System and method for session management of streaming media |
| US20090174759A1 (en) | 2008-01-04 | 2009-07-09 | Viable Communications, Inc. | Audio video communications device |
| CN101483565B (zh) * | 2008-01-11 | 2011-04-27 | 财团法人工业技术研究院 | 串流数据的网络传输系统与方法 |
| TW200951832A (en) * | 2008-04-15 | 2009-12-16 | Novafora Inc | Universal lookup of video-related data |
| CN101286927A (zh) * | 2008-05-08 | 2008-10-15 | 蒋一 | 一种基于节点互连优化实现p2p流媒体系统的方法 |
| US8196186B2 (en) * | 2008-05-20 | 2012-06-05 | Microsoft Corporation | Security architecture for peer-to-peer storage system |
| TW201023647A (en) * | 2008-12-12 | 2010-06-16 | Yu-Yi Chen | A conditional access mechanism for peer-to-peer IPTV service |
| US20110225617A1 (en) * | 2010-03-13 | 2011-09-15 | Selim Shlomo Rakib | Collaborative recording network system and method |
| CN101867608B (zh) * | 2010-05-24 | 2013-03-13 | 中国科学院计算技术研究所 | 一种集中式块交换p2p文件共享系统及其服务方法 |
-
2010
- 2010-11-04 TW TW099137965A patent/TWI415427B/zh active
- 2010-12-10 CN CN201010597241.0A patent/CN102469153B/zh active Active
-
2011
- 2011-05-17 US US13/109,199 patent/US8726327B2/en active Active
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US9674282B2 (en) | 2012-09-28 | 2017-06-06 | International Business Machines Corporation | Synchronizing SLM statuses of a plurality of appliances in a cluster |
| TWI478538B (zh) * | 2012-11-28 | 2015-03-21 | Inventec Corp | 伺服器系統 |
| TWI492581B (zh) * | 2013-05-17 | 2015-07-11 | Univ Nat Sun Yat Sen | 即時影音串流的群播重傳系統及其方法 |
| US10430120B2 (en) | 2014-07-30 | 2019-10-01 | Industrial Technology Research Institute | Data object management method and data object management system |
| TWI706672B (zh) * | 2016-08-01 | 2020-10-01 | 瑞軒科技股份有限公司 | 多媒體播放方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| US20120117605A1 (en) | 2012-05-10 |
| CN102469153A (zh) | 2012-05-23 |
| US8726327B2 (en) | 2014-05-13 |
| CN102469153B (zh) | 2015-01-28 |
| TWI415427B (zh) | 2013-11-11 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| TW201220767A (en) | System and method for peer-to-peer live streaming | |
| US9667682B2 (en) | Media content streaming using stream message fragments | |
| AU2011274249B2 (en) | Systems and methods for storing digital content | |
| CN102685232B (zh) | 基于流媒体服务器的多媒体文件获取方法及流媒体服务器 | |
| TWI339340B (en) | Message processing pipeline for streams | |
| US20080189429A1 (en) | Apparatus and method for peer-to-peer streaming | |
| JP6219800B2 (ja) | マルチトラックビデオコンテンツを提供するためのマルチトラックビデオコンテンツサービス方法およびシステム | |
| CN110012300A (zh) | 视频直播方法及装置 | |
| US11425178B1 (en) | Streaming playlist including future encoded segments | |
| US20200145722A1 (en) | Bandwidth limited dynamic frame rate video trick play | |
| CN104469391B (zh) | 一种基于云平台的数字电视内容分发系统及方法 | |
| CN101677325A (zh) | 发布媒体描述信息和获取媒体的方法、装置、系统 | |
| US20130138736A1 (en) | Multimedia file sharing method and system thereof | |
| US11012725B2 (en) | Live video replay method, replay server and system | |
| CN107920258A (zh) | 一种数据处理方法及装置 | |
| US20190238637A1 (en) | Data replication in scalable messaging system | |
| JP2013097679A (ja) | 情報処理装置およびその方法 | |
| CN104320627A (zh) | 一种医院病房视频监视的方法以及相关应用服务系统 | |
| US20070136484A1 (en) | Transmit request management in a distributed shared storage system | |
| CN102438171B (zh) | 节目源文件处理方法、装置及网络电视系统 | |
| KR101664188B1 (ko) | P2p 네트워크 기반 데이터 관리 장치 및 데이터 관리 방법 | |
| Qiang et al. | A Hyper-converged video management system based on object storage | |
| JP4667419B2 (ja) | 分散型マルチメディアサーバシステムおよびそのマルチメディア情報蓄積・配信方法 | |
| TWI395428B (zh) | 對等式網路控制系統 | |
| US20170353772A1 (en) | Method for controlling mpeg media transport (mmt) session and apparatus performing the same |