CN102469153A - 点对点实时串流系统与方法 - Google Patents

点对点实时串流系统与方法 Download PDF

Info

Publication number
CN102469153A
CN102469153A CN2010105972410A CN201010597241A CN102469153A CN 102469153 A CN102469153 A CN 102469153A CN 2010105972410 A CN2010105972410 A CN 2010105972410A CN 201010597241 A CN201010597241 A CN 201010597241A CN 102469153 A CN102469153 A CN 102469153A
Authority
CN
China
Prior art keywords
point
node
time
sign
real
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
CN2010105972410A
Other languages
English (en)
Other versions
CN102469153B (zh
Inventor
苗育本
谢锡堃
黄祖基
魏全佑
罗本文
曾秉钧
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Industrial Technology Research Institute ITRI
Original Assignee
Industrial Technology Research Institute ITRI
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 Industrial Technology Research Institute ITRI filed Critical Industrial Technology Research Institute ITRI
Publication of CN102469153A publication Critical patent/CN102469153A/zh
Application granted granted Critical
Publication of CN102469153B publication Critical patent/CN102469153B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • 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/80Responding to QoS
    • 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/104Peer-to-peer [P2P] networks
    • H04L67/1074Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling 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/2365Multiplexing of several video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing 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/2383Channel coding or modulation of digital bit-stream, e.g. QPSK modulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/238Interfacing 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/2387Stream processing in response to a playback request from an end-user, e.g. for trick-play
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/478Supplemental services, e.g. displaying phone caller identification, shopping application
    • H04N21/4788Supplemental services, e.g. displaying phone caller identification, shopping application communicating with other users, e.g. chatting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network 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/63Control 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)

Abstract

本发明公开了点对点实时串流系统与方法。一点对点网络中有一内容提供者以及多个节点。此多个节点的每一节点备有一点对点实时串流系统,其中,一标志管理者模块管理此多个节点传递的至少一标志、通知一记录发布者模块发布已记录像音串流内容的信息以及指挥一记录管理者模块记录串流信息。此记录发布者模块根据此标志管理者模块的通知,透过一点对点模块发布已记录像音串流内容的信息至此点对点网络中。此记录管理者模块管理每一节点各自相对应的一储存空间,并且根据此标志管理者模块的指挥,负责记录像音串流内容至每一节点相对应的储存空间。点对点模块处理此多个节点之间的点对点信息及维护此点对点网络的结构。

Description

点对点实时串流系统与方法
技术领域
本发明所属的技术领域是关于一点对点(PEER-TO-PEER,P2P)实时串流系统与方法。
背景技术
现今网络频宽日渐提升,对影音串流(media streaming)的质量也相对提升,因此也增加了影音服务器(media server)的频宽用量,为减少影音服务器的频宽负担,许多软件也开始以P2P技术为发展方向,常见的如BitTorrent(BT)类或是网状(mesh)网络等形式。
例如,实时回放(instant replay)与时光回溯(time-shifted)播放(playback)的一篇专利公开文献(US20070130597)中,提供一个多媒体内容传递服务器(multimedia content delivery server)来储存所有实时视频串流(live video stream),以便提供实时回放(instant replay)的功能,如同时光回溯(time-shifted),可以随时回放之前的画面,并且透过一中央控管机制,终端藉由数字机顶盒(set top box),将时光回溯的时间点回传到此中央控管机制的服务器,然后此服务器再响应以相关的信息或数据。当终端使用的人数增多时,往往需要添购服务器与增加网络频宽,来确保服务质量。
专利文献(US7,536,704)公开了一种提供内容显示(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 responselevel),此技术的缺点是需要维护中央控管的机制,容易造成系统瓶颈。
在专利文献(US2008/0133767)实时群播点对点视频串流平台(Real-Timemulticast Peer to Peer video streaming platform)中,如图1所示,100提供一种分布式储存实时串流的技术。内容提供者102利用一台连接至一公用网络(public network)104的计算机设备,并且希望储存于其高速缓存里的内容区块(chunks of content)能分散给邻近的节点(peer)108-114,此内容例如来自一摄影机106或是其它数据来源。内容提供者102与邻近的节点108-114在其各自的计算机设备上执行一软件或硬件的串流代理116,来促使这些内容区块易于分散给其它节点。这种架构需要一台服务器以撷取或存放节目的所有数据,如果节目是实时(Live)型态,如此服务器的数据空间将会面临不足的问题。另一方面,如果观众的数量越多,服务器将会面临网络频宽不足而导致实时节目的画面停格或不顺畅的问题。其原因是此技术没有提到点对点之间相互协调负载平衡(load balance)的机制。
另一篇专利文献(US2006/0053209)是公开一种可调整大小的媒体(scalable media)的分布式串流(distributed streaming)技术。在连结点对点网络(coupled P2P networks)上,节点串流器(Peer Streamer)可以提供一种接收器驱动式(receiver-driven)的点对点影音串流,其中提到有关节点清单(peer lists)可以采用分布式杂凑表(Distributed Hash Table,DHT)来搜寻。此技术没有提及如何利用分布式杂凑表的方法达到点对点之间相互协调负载平衡(load balance)的机制。
在专利文献(US20090119734)一种时光回溯与实时点对点视频串流的分布式快取方法与系统(Distributed cache algorithms and system fortime-shifted,and live,peer-to-peer video streaming)中,如图2所示,视频来源(video source)210经由一网络链接(network link)221,而连接至一封包传输网络(packet transmission network)220,客户/节点端230也经由各自的网络链接,而连接至封包传输网络220。此分布式快取系统200经由分布式快取在系统的点对点部份里共享的视频串流的部份,来支持实时与时光回溯的视频串流,其中,客户/节点端230的每一客户/节点j,1≤j≤N,需要将本身的信息内容的可用性注册到一搜寻服务器(search server)260,串流来源的搜寻也需与搜寻服务器260通信,并使用一固定位率串流,透过初始播放位置(Initial Playback Position,IPP)与实时-串流位置(Live-StreamPosition,LSP)的视频快取策略(video cache policy)而取得较佳的搜寻效率。此方法仍需维护一个或多个搜寻服务器,且IPP或LSP仅将视频串流概分为两大类,节点间无相互协调机制以达到负载平衡。
发明内容
本发明公开了一点对点(Peer-to-Peer,P2P)实时串流系统与方法实施范例。
在一实施范例中,公开一点对点实时串流系统,应用于一点对点网络中,此点对点网络中有一内容提供者以及收看同一实时串流频道的多个节点,此多个节点的每一节点上备有此系统。此系统包含一标志管理者模块(tokenmanager module)、一记录发布者模块(recording publisher module)、一记录管理者模块(recording manager module)以及一点对点模块(P2P module)。此标志管理者模块处理至少一标志、通知此记录发布者模块发布已记录像音串流内容的信息以及指挥此记录管理者模块记录串流数据。此记录发布者模块根据此标志管理者模块的通知,透过此点对点模块发布已记录像音串流内容的信息至此点对点网络中。此记录管理者模块管理此节点的一储存空间,并且根据此标志管理者模块的指挥,负责记录像音串流内容至此储存空间。此点对点模块处理此多个节点之间的点对点信息及维护此点对点网络的结构。
在另一实施范例中,公开一点对点实时串流方法,应用于一点对点网络上的实时串流系统。此方法包含:将收看同一实时串流频道的多个节点组成一点对点网络;当此多个节点中的一节点在收看一实时串流时,传递一标志,此标志上备有记录此实时串流的部分数据的时间信息;收到此标志的节点依此标志上的时间信息,将此实时串流上所指定的一时间区间的数据记录于一储存空间后,以此时间区间为一键值发布至此点对点网络;以及当此多个节点中的任一节点欲收看一时间点的实时串流时,以此时间点为键值至此点对点网络中,取得拥有此时间点的串流数据的至少一节点的地址信息,并向其中的一节点下载此时间点对应的一时间区间内的串流数据。
兹配合下列附图标记、实施范例的详细说明及权利要求书,将上述及本发明的其它目的与优点详述于后。
附图说明
图1是一种实时群播点对点视频串流平台的一个范例示意图;
图2是一种时光回溯与实时点对点视频串流的分布式快取方法的一个范例示意图;
图3是一种以分布式杂凑窗体-网络为基础的影音串流的一个范例示意图,与所公开的某些实施范例一致;
图4是管理储存空间的一个范例示意图,其中以图3的网络拓扑为例,与所公开的某些实施范例一致;
图5是点对点实时串流系统的一个范例示意图,与所公开的某些实施范例一致;
图6以一状态示意图的范例来说明标志管理者模块处理多个节点的标志传递的流程,与所公开的某些实施范例一致;
图7是一范例示意图,说明标志传递时,两节点之间的握手协议,与所公开的某些实施范例一致;
图8是一范例流程图,说明记录像音串流内容的流程,与所公开的某些实施范例一致;
图9是一范例示意图,说明节点如何在一点对点网络中发布/撷取节点清单,与所公开的某些实施范例一致;
图10是一范例示意图,说明如何将一影音串流发布至节点清单或从节点清单取得此影音串流存放的节点,与所公开的某些实施范例一致;
图11是一范例示意图,说明图6的有限状态机的持有标志状态,与所公开的某些实施范例一致;
图12是一范例示意图,说明图6的有限状态机的等待回复确收状态,与所公开的某些实施范例一致;
图13是一范例示意图,说明图6的有限状态机的等待下一标志状态,与所公开的某些实施范例一致;
图14是一范例示意图,说明标志管理的正常情况,与所公开的某些实施范例一致;
图15是一范例示意图,说明标志管理的回复确收延迟/遗失情况与所公开的某些实施范例一致;
图16是一范例示意图,说明标志管理的标志延迟/遗失情况,与所公开的某些实施范例一致;
图17是点对点实时串流系统的一个应用范例的示意图,与所公开的某些实施范例一致;
图18是一范例流程图,说明点对点实时串流方法,与所公开的某些实施范例一致。
其中,附图标记:
100 实时群播点对点视频串流平台     102 内容提供者
104 公用网络                       106 摄影机
108-114 节点                       116 串流代理
200 分布式快取系统                 210 视频来源
220 封包传输网络                   221 网络链接
230 客户/节点端                    260 搜寻服务器
300 分布式杂凑窗体-网络            1-5 节点
310 来源端                         410 一储存空间  420 标志
431 记录着实时的部分影音串流数据的记录区间
432、433 记录着过去时段储存的部分影音串流数据的记录区间
432a、433a 记录区间的标头
500 点对点实时串流系统             510 标志管理者模块
520 记录发布者模块                 530 记录管理者模块
540 点对点模块
610 检查此节点是否为进入该频道的第一个节点
620 找到其它存在的节点             630 等到记录串流内容的时间
640 记录串流内容并传递标志给下一节点
650 ACK延迟或遗失                  660 发布已记录像音串流内容
670 收到下一标志                   680 下一标志延迟或遗失
701、702 时间区间                  710 传递标志
720 回复确收此标志                 730 回复记录完成
750 标志传递路径
805 记录目前影音串流内容的时间事件发生
810 开始记录目前影音串流内容至一相对应的记录区间
815 传递标志给下一节点
820 持续记录目前影音串流内容至该相对应的记录区间
825 收到下一节点的回复记录完成
830 停止记录像音串流内容           R1~R5 节点指标
1010 时间码1020指标                1030 对应表1040节点清单
1100 “持有标志”状态              1101 回复确收标志给上一节点
1102 检查是否有其它存在的节点
1104 检查是否收到下一标志          1106 删除此下一标志
1108 检查记录串流内容的时间事件是否发生
1110 开始记录串流内容并传递标志给下一节点
1200 “等待回复确收”状态          1202 检查是否收到回复确收
1204 检查其计时器的时间是否到临
1206 检查串流内容完成记录的时间事件是否发生
1208 响应记录完成给此节点
1210 检查是否收到来自它的下一节点的记录完成的响应
1212 此节点发布已记录像音串流内容的信息并停止记录串流内容
1214 检查其计时器的时间是否到临
1300 “等待下一标志”状态
1302 检查其计时器的时间是否已到临
1304 检查是否收到下一标志?
1410 节点A收到标志                 1412 节点A回复确收标志
1414 节点A传递标志                 1420 节点B收到标志
1422 节点B回复确收标志             1424 节点B传递标志
1510 节点A传递标志                 1520 节点B收到标志
1522 节点B延迟/遗失回复确收标志
1524 节点B传递标志
1512 节点A再产生标志,并再传递标志
1526 节点B再收到标志               1528 节点B回复确收标志
1529 节点B再传递标志               1610 节点A传递标志
1612 节点A再产生标志并再传递标志给
1620 节点B在收到标志               1622 节点B回复确收标志
1624 节点B传递标志                 1626 节点B收到延迟的标志
1700 实时个人录像系统
1810 将收看同一实时串流频道的多个节点组成一点对点网络
1820 当此多个节点中的一节点在收看一实时串流时,传递一标志,此标志上备有记录此实时串流的部分数据的时间信息
1830 收到此标志的节点依此标志上的时间信息,将此实时串流上所指定的一时间区间的数据记录于一储存空间后,以此时间区间为一键值发布至此点对点网络
1840 当此多个节点中的任一节点欲收看一时间点的实时串流时,以此时间点为键值至此点对点网络中,取得拥有此时间点的串流数据的至少一节点的地址信息,并向其中的一节点下载此时间点对应的一时间区间内的串流数据
具体实施方式
本发明公开公开一记录点对点网络里实时串流(live streaming)内容的机制实施范例。此机制不仅考虑如何保持网络频宽的负载平衡,也提供一种分布式管理方式来减少点对点网络中的资源耗损,例如服务器的添购或是储存空间的增加。
图3是一种以分布式杂凑表-网络(DHT-Network)为基础的影音串流的一个范例示意图,与本发明所公开的某些实施范例一致。图3的范例中,以五个节点(Peer为例,五个圆圈代表节点1至节点5,此五节点采用同一种杂凑函数对应,加入(join in)于同一实时串流频道,而形成一个DHT-网络300,其中箭头代表影音串流。媒体从一来源端(source)310串流至各个节点。DHT-网络300的形状可以是环状、或是线状、树状、或是多维,此范例为环状。每一节点有各自的节点识别码(Node ID),并且有上一节点(predecessor node)以及下一节点(successor node)。以节点2为例,有上一节点1以及下一节点3。
在一实施范例中,将所有收看同一实时串流(live streaming)频道的节点(Peer)组成一点对点网络,以此点对点网络为点对点网络建构方式,进行实时串流分享以及提供实时串流时光回溯功能。当一节点在收看一实时串流时,传递一标志(token),收到此标志的节点将依照此标志上的时间信息,记录此实时串流上所指定的时间区间(time slot)的数据到一储存装置的一储存空间(buffer)。储存完成后,以此时间区间为键值(key)发布至此点对点网络中。当一节点欲执行串流时光回溯时,例如欲收看某一时间点的实时串流时,则以此时间点为键值,至此点对点网络中取得拥有该时间点数据的节点地址信息,然后向该节点下载该时间点的记录区间(recorded slot)内的串流数据内容(contentof stream data)。
此点对点网络中有一影音串流的内容提供者以及收看同一实时串流频道的多个节点,此多个节点的每一节点上可备有一点对点实时串流系统。针对标志(token)的处理方式,每一节点包含相同的管理模块,例如采用一致的标志管理者模块,如此可以将系统架构简化,而且不需要使用额外的模块来支持标志的处理。此标志管理者模块会指示系统里的一记录管理者模块,何时储存影音串流内容。一旦储存完毕,就会交给系统里的一记录发布者模块,来发布已记录此影音串流内容。系统里的记录发布者模块可以透过一点对点模块,来发布已记录像音串流内容的信息于点对点网络上,让此点对点网络中的记录撷取者模块(recording retriever module)可读取此影音串流内容。而传递的标志也会在各节点间流通。
如前述所述,影音串流内容会储存到一储存装置的一储存空间。此储存装置例如是随机存取储存(Random Access Memory,RAM)、或是软/硬盘(disk)、或是其它储存设备。在本发明公开的一实施范例中,系统里的记录管理者模块也需具备储存此影音串流内容的储存空间的管理功能。
图4是管理储存空间(buffer management)的一个范例示意图,其中以图3的DHT网络拓扑(network topology)为例,与本发明所公开的某些实施范例一致。图4的范例中,在DHT网络300上,节点1至节点5收看同一频道,假设节点2在收看一实时串流时,传递一标志420给节点3,标志420会在各节点间传递。每一节点保留各自的一储存空间410。在本发明的一实施例中,每一节点的储存空间410的大小是可调整的,例如可根据节点的储存设备容量大小的条件限制来调整。系统里的记录管理者模块以时间单位将每一节点所对应的一储存空间410切割成多个区块(chunk),来记录像音串流数据,包括实时的(live)部分影音串流数据与过去储存的部分影音串流数据,其中储存部分影音串流数据的每一区块称为一记录区间。储存空间410中,每一已储存完部分影音串流数据的记录区间备有一标头(chunk header)来储存被记录的影音串流内容的频道信息与时间信息。以节点3为例,有三个记录区间,其中记录区间431记录着实时的部分影音串流数据;而记录区间432与433皆记录着过去时段储存的部分影音串流数据,且分别备有标头432a与433a。例如标头432a,储存某一过去时段记录的部分影音串流的时间信息。
由于每一串流对应一时间码(time code),所以将记录区间以串流上的时间码与频道码为键值,算出其杂凑值(hash value)并存放于DHT网络300上。以串流上的时间码为识别码与频道码算出其杂凑值,来搜寻DHT网络300。
系统里的记录管理者模块可利用重复的记录区间(redundant slots)做为节点失败复原(node failure recovery)之用。标志上的信息(Token information)可包含一节点的上一节点记录实时串流的部分数据内容的起始时间与结束时间。记录串流数据内容的最小时间单位为一固定长度的时间,例如5秒(second)。记录发布者模块可以利用一记录区间的标头里的频道信息与时间信息为键值,藉由DHT来决定出是那一节点存有此记录区间里的影音串流数据的一节点清单(peer lists)。
承上述,在一实施范例中,收看同一实时串流频道的多个节点的每一节点上可备有一点对点实时串流系统。如图5的范例所示,每一节点上的点对点实时串流系统500可包含一标志管理者模块510、一记录发布者模块520、一记录管理者模块530、以及一点对点模块540。标志管理者模块510管理至少一标志、通知记录发布者模块520发布已记录像音串流内容的信息、以及指挥记录管理者模块530记录串流内容。记录发布者模块520根据标志管理者模块510的通知,透过点对点模块540发布已记录像音串流内容的信息到由此多个节点组成的一点对点网络中。记录管理者模块530管理此节点的一储存空间,并且根据标志管理者模块510的指挥,负责记录像音串流内容至此储存空间。点对点模块540处理此多个节点之间的点对点信息及维护此多个节点的点对点网络结构。
图6以一有限状态机(finite state machine)的范例示意图来说明标志管理者模块510处理此多个节点的标志传递的流程,与本发明的某些实施范例一致。图6的状态示意图的范例中,共有五个状态,即加入频道(join channel)、产生标志(create token)、持有标志(hold token)、等待回复确收(wait for ACK)、以及等待下一标志(wait for next token)。当一节点加入一个实时视频串流频道时,此节点即进入“加入频道”状态。标志管理者模块510会检查此节点是否为进入该频道的第一个节点,如标号610所示。是的话,此节点则产生一标志,即处于“产生标志”状态;否则,此节点进入“等待下一标志”状态。
产生标志后,此节点进入“持有标志”状态,待找到其它存在的节点(如标号620所示)及等到记录串流内容的时间(如标号630所示)到达后,则此节点记录串流内容并传递标志给下一节点(如标号640所示),然后此节点进入“等待回复确收”状态。在此节点收到下一节点传送的回复确收之前,如果此回复确收(ACK)延迟(delay)或遗失(loss)(如标号650所示),则此节点进入“产生标志”状态,也就是说,此节点必须重复之前的流程,以重新传递一个新标志。所以,标志管理者模块可采用一有限状态机来描述此多个节点的标志传递的处理流程。
假设此节点为节点A,下一节点为节点B,请一并参考图7于标志传递路径(token delivery path)750中,此两节点之间握手(handshake)协议的范例示意图。图7的范例中,节点A在时间区间701内传递标志给节点B,以箭头710表示。节点B收到此标志后,在时间区间701内向节点A回复确收此标志,以箭头720表示。节点B记录完串流内容后,向节点A回复记录完成,以箭头730表示。
待节点A收到节点B的回复记录完成后,标志管理者模块510会通知节点A发布已记录像音串流内容的信息,如图6所示,节点A则停止记录像音串流内容,然后发布已记录像音串流内容的信息(如标号660所示),然后节点A进入“等待下一标志”状态。节点A收到此下一标志(如标号670所示)后,进入“持有标志”状态。在节点A收到下一标志之前,如果此下一标志延迟或遗失(如标号680所示),则节点A进入“产生标志”状态,也就是说,节点A必须重复之前的流程。
承上述,图8是一范例流程图,说明记录像音串流内容的流程,与本发明的某些实施范例一致,其中以前述节点A和节点B为范例来说明。参考图8,节点A进入“持有标志”状态后,一旦记录目前影音串流内容的时间事件发生(以标号805表示),例如检测到目前影音串流所对应的时间码已经到达所持有的标志上的记录的起始时间,则节点A开始记录目前影音串流内容至一相对应的记录区间,如步骤810所示。并且节点A传递标志给下一节点B(以标号815表示),节点A传递标志后,持续记录目前影音串流内容至该相对应的记录区间,如步骤820所示。待节点A收到下一节点B的回复记录完成(以标号825表示)后,节点A则停止记录像音串流内容,如步骤830所示。
节点A传递标志给节点B前,会先修改此标志的时间信息再将此标志传递给节点B。而节点B收到节点A传递的标志后,同样地,节点B等到记录目前影音串流内容的时间事件发生时,开始记录目前影音串流内容至一相对应的记录区间,直到完成记录目前影音串流内容至其相对应的记录区间为止,然后向节点A回复记录完成。依此,节点持续储存串流数据直到收到下一节点的回复记录完成为止。如此,就可以产生重复的记录区间,来降低影音串流区块遗失的可能性,以利节点失败复原(node failure recovery)。
在本发明的一实施例中,采用标志分散管理方式,也就是说,同一点对点网络中每一节点采用同一标志管理者模块510,以一致的处理方式来管理标志,包括如管理标志的加入(addition)、删除(deletion)、例外的(exception)处理等,例外的处理例如是标志被延迟或遗失等的错误复原处理(error recoveryhandling),如此可以简化系统架构,并且不需要藉由额外的模块来支持标志的处理。透过标志管理者模块510的指挥,标志上的记录的起始时间会指示系统中的记录管理者模块530何时储存影音串流内容至节点各自相对应的储存空间,当节点相对应的储存空间已经被填满(full)时,此储存空间内的旧数据会被新记录(new record)的影音串流内容更新(updated)。一旦节点将部分影音串流内容储存完毕,就会交给记录发布者模块处理。标志会在各节点之间流通,而标志上的信息载有上一节点记录部分影音串流内容的起始时间与结束时间。换句话说,标志管理者模块510透过标志传递来规范在同一点对点网络中多个节点的那些节点必须记录被切割的多个区块的那些区块中的部分影音串流内容。
图9是一范例示意图,说明节点如何在一点对点网络中发布/撷取节点清单的流程,与所公开的某些实施范例一致。在图9的范例中,一点对点网络中有五个节点,其节点指标(node index)分别为R1~R5。根据圆圈标记1的顺序与流向(以实线箭头表示),节点R3先将其已储存影音串流内容的相关信息发布至一节点R5。节点R5将节点R3的IP地址信息及记录串流数据内容的起始时间与结束时间记录于一节点清单(peer list)。节点R5的选择是透过一DHT及配合点对点模块540所采用的一算法来决定。此DHT的键值是由频道码与时间码(time code)来决定,而时间码的值是隐含在影音格式内,例如可选择MPEG II的影音格式。根据圆圈标记2与3的顺序与流向(以虚线箭头表示),节点R4也是透过相同的DHT寻址出,再透过点对点模块540找到正确的记录节点(即节点R5),并将节点R5记录的节点清单传回此发出撷取要求的节点R4。根据圆圈标记4的顺序与流向(以虚线箭头表示),节点R4再根据此回传的节点清单里的信息,找到影音串流内容存放的正确位置,即节点R3,并从节点R3取得所要求的影音串流内容。
图10是一范例示意图,说明如何将一影音串流发布至节点清单或从节点清单取得此影音串流存放的节点,与本发明的某些实施范例一致。参考图10,由于每一影音串流对应一时间码,所以将一影音串流对应的时间码1010作为同一分布式杂凑表(DHT)的输入键值,透过此DHT,找出一指标1020,指标1020结合一对应表(mapping table),例如对应表1030,就是存放此影音串流的节点清单1040。从节点清单1040的内容里,就可得知从那些节点可取得所要求的影音串流内容。对应表1030的每一列里记录的信息至少包括影音串流的记录的起始时间与完成时间,及其相对应的节点指标;例如,对应表1030的一列里的信息为节点指针R3(即记录发布者模块)的记录像音串流的起始时间S1与完成时间E1。
图11、图12及图13分别说明图6的有限状态机的持有标志状态、等待回复确收状态、及等待下一标志状态,与所公开的某些实施范例一致。
参考图11的范例,一节点可从“产生标志”状态进入“持有标志”状态1100,也可从“等待下一标志”状态进入“持有标志”状态1100。当一节点从“产生标志”状态进入“持有标志”状态1100,在“持有标志”状态1100中,先检查是否有其它存在的节点(步骤1102)。若此节点是从“等待下一标志”状态进入“持有标志”状态1100,则此节点并会先收到此下一标志(以标号1120表示)后,再进入“持有标志”状态1100,并且会先回复确收标志给上一节点(步骤1101),再进行步骤1102。
若没有其它存在的节点时,则持续步骤1102,直到有其它存在的节点。然后,此节点检查是否收到下一标志(步骤1104),是的话,此节点删除此下一标志(步骤1106)及检查记录串流内容的时间事件是否发生(步骤1108),当此节点没有收到下一标志时,此节点进行步骤1108。若记录串流内容的时间事件未发生,则此节点返回步骤1102。当记录串流内容的时间事件发生时,此节点开始记录串流内容并传递标志给下一节点(步骤1110),然后此节点进入“等待回复确收”状态。
参考图12的范例,一节点可从“持有标志”状态进入“等待回复确收”状态1200,然后从“等待回复确收”状态1200进入“等待下一标志”状态或是“产生标志”状态。当此节点进入“等待回复确收”状态1200,先检查是否收到回复确收(步骤1202)。若收到回复确收,此节点检查串流内容完成记录的时间事件是否发生(步骤1206)。若未收到回复确收,则此节点检查其计时器的时间是否到临(步骤1204),若未到临,则持续进行步骤1202,直到此节点的计时器的时间到临为止,然后此节点进入“产生标志”状态。
若串流内容完成记录的时间事件尚未发生,则持续进行步骤1206,直到发生串流内容完成记录的时间事件,然后响应记录完成给上一节点(步骤1208)。此节点检查是否收到来自它的下一节点的记录完成的响应(步骤1210),是的话,此节点发布已记录像音串流内容的信息并停止记录串流内容(步骤1212),然后进入“等待下一标志”状态。若此节点没有收到来自它的下一节点的记录完成的响应,此节点检查其计时器的时间是否已到临(步骤1214),是的话,此节点进入“产生标志”状态,否则返回步骤1210。
参考图13的范例,一节点可从“等待回复确收”状态进入“等待下一标志”状态1300,然后从“等待下一标志”状态1300进入“持有标志”状态或是“产生标志”状态。当此节点进入“等待下一标志”状态1300,先检查其计时器的时间是否已到临(步骤1302),是的话,此节点进入“产生标志”状态;不是的话,此节点检查是否收到下一标志(步骤1304)。收到下一标志的话,此节点进入“持有标志”状态;否则,此节点返回步骤1302。
图14、图15、及图16分别说明标志管理的三种情况,分别为正常情况、回复确收延迟/遗失情况、及标志延迟/遗失情况,其中圆圈代表标志,同一图案的圆圈代表同一标志,虚线圆圈代表回复确收标志,与本发明所公开的某些实施范例一致。
参考图14的正常情况的范例,节点A在其时间区间C1收到标志(如标号1410所示)后,回复确收标志(如标号1412所示)给上一节点,再传递标志(如标号1414所示)给下一节点B。然后,节点A在其时间区间C2与C3记录像音串流内容。节点B在其时间区间C1收到标志(如标号1420所示)后,在其时间区间C2回复确收标志给上一节点A(如标号1422所示),再传递标志给其下一节点(如标号1424所示)。然后,节点B在其时间区间C3与C4记录像音串流内容。
参考图15的回复确收延迟/遗失情况的范例,节点A在其时间区间C2传递标志(如标号1510所示)给下一节点B。节点B在其时间区间C1收到此标志(如标号1520所示)后,但在其时间区间C2延迟/遗失给上一节点A的回复确收标志(如标号1522所示),并传递标志给其下一节点(如标号1524所示)。根据之前所述,当节点A的计时器的时间到临时,节点A在其时间区间C4再产生标志,并再传递标志给下一节点B(如标号1512所示)。也就是说,如果回复确收标志被延迟或遗失,则上一节点A的计时器的时间会到临,表示发生延迟或遗失事件,而上一节点A会再产生标志,并重传标志。
然后,节点B在其时间区间C3再收到标志(如标号1526所示)后,在其时间区间C3回复确收标志给上一节点A(如标号1528所示),再传递标志给其下一节点(如标号1529所示)。然后,节点B在其时间区间C4与C5记录像音串流内容。而节点A延长记录像音串流内容的时间区间至其时间区间C4。
参考图16的标志延迟/遗失情况的范例,节点A在其时间区间C2传递标志给下一节点B(如标号1610所示)。但节点B在其时间区间C1与C2都没有收到标志。根据之前所述,当节点A的计时器的时间到临时,节点A在其时间区间C4再产生标志,并再传递标志给下一节点B(如标号1612所示)。也就是说,一旦超过标志被传送的时间,则上一节点A的计时器的时间会到临,表示发生标志失败事件,则上一节点A会再产生标志,并重传标志。如果在一定时间内,节点B收到多个重复的标志则节点B会将重复的标志删除,来控制标志的成长,以避免太多的标志传递。
然后,节点B在其时间区间C3收到标志(如标号1620所示)后,在其时间区间C3回复确收标志给上一节点A(如标号1622所示),并传递标志给其下一节点(如标号1624所示)。若节点B在同一时间区间C3又收到节点A上次延迟的标志(如标号1626所示),则节点B将此延迟的标志视为重复并回收。然后,节点B在其时间区间C4与C5记录像音串流内容。而节点A记录像音串流内容的时间区间也延长至其时间区间C4。
从图14、图15、及图16可以窥知,本发明所公开的一实施例中,标志管理无论在正常情况下或在异常情况下,都可发送多个标志以记录重复的数据,如此可降低影音串流区块遗失的可能性。并且,本发明的一实施例中,标志管理还可兼顾多个标志的产生(generation)与抑制(suppression),一方面加强实时影音串流服务的可靠度(reliability),另一方面也使每一节点记录像音串流内容所使用的储存空间达到最佳化。
承前述有限状态机的各状态的描述、标志传递的流程、及点对点实时串流系统500的各模块的运作,皆说明了标志会在点对点-拓扑网络上的各节点间流通。也就是说,本发明的一实施范例,针对标志或是所有影音串流数据的储存可采用分布式管理。图17是点对点实时串流系统的一个应用范例的示意图,与所公开的某些实施范例一致。
图17的应用范例是一实时(live)个人录像(personal video recording,PVR)系统1700。个人录像系统1700中,每一节点包含相同的标志分散管理(tokendistribution management)模块,针对标志的处理方式一致。每一节点有各自的储存空间,例如是随机存取储存、或是软/硬盘等,来储存影音串流内容。当节点是一记录发布者/撷取者模块时,储存影音串流内容的信息会公布于一节点清单,或从一节点清单可取得储存此影音串流内容的节点地址信息,此节点清单可储存于一随机存取储存、或是软/硬盘、或是其它的储存装置。实时个人录像系统1700中的所有节点形成一点对点网络。
换句话说,实时个人录像系统1700中,内建储存媒体(储存空间储存影音串流内容),采用标志分散管理,每一节目各自形成一点对点网络,每一节点各自拥有一标志管理者模块与一点对点模块。当观赏者欲收看某一时间点的实时串流时,必须先加入点对点网络,然后以该时间点为键值至此点对点网络中取得拥有该时间点数据的节点地址信息,并向该节点下载时间点区间内的串流数据。如此,观赏者可以自由安排收视时间。实时个人录像系统1700还可包括一文件管理模块,依据过去观看节目的记录建立使用者偏好文件,也可根据使用者对节目的偏好设定自动录像。
承上述,以图18的范例流程图,来说明本发明的点对点实时串流方法一实施例,与所公开的某些实施范例一致。图18的范例中,将收看同一实时串流频道的多个节点组成一点对点网络,如步骤1810所示。当此多个节点中的一节点在收看一实时串流时,传递一标志,此标志上备有记录此实时串流的部分数据的时间信息,如步骤1820所示。收到此标志的节点依此标志上的时间信息,将此实时串流上所指定的一时间区间的数据记录于一储存空间后,以此时间区间为一键值发布至此点对点网络,如步骤1830所示。当此多个节点中的任一节点欲收看一时间点的实时串流时,以此时间点为键值至此点对点网络中,取得拥有此时间点的串流数据的至少一节点的地址信息,并向其中的一节点下载此时间点对应的一时间区间内的串流数据,如步骤1840所示。
步骤1810中,此多个节点采用同一种杂凑函数对应,加入于同一实时串流频道,而形成一个DHT-网络,并且每一节点可以有一上一节点以及一下一节点,如图7的范例。步骤1820中,于标志传递的路径中,传递与收到此标志的节点之间是以一种握手方式来协议,如图3的范例。每一节点采用同一分布式管理方式来管理标志,至少包括管理标志的加入、删除、及错误复原处理,如前述所载,不再重述。标志管理的三种情况(正常情况、回复确收延迟/遗失情况、及标志延迟/遗失情况)如图14、图15及图16的范例说明。
步骤1830中,储存空间的管理,如图4的范例说明;记录像音串流内容的流程,如图8的范例说明。而如何在点对点网络中发布串流数据如图9的范例说明,可透过一分布式杂凑表的对应,及配合一算法来选择一记录节点,传递标志的节点将其已储存影音串流内容的相关信息发布至此记录节点;然后,此记录节点将发布相关信息的节点及记录串流数据内容的一起始时间与一结束时间记录于一节点清单。如何从节点清单取得此影音串流存放的节点如图10的范例说明,不再重述。
综上所述,本发明公开了一记录实时串流内容的机制实施范例,架构于点对点的网络拓扑。在本公开的一实施范例中,可将所有收看同一实时串流频道的节点组成一点对点网络,以此点对点网络为点对点网络建构方式,进行实时串流分享以及提供实时串流时光回溯功能。此点对点实时串流技术能支持多种装置或系统,例如个人计算机(PC)、服务器、移动装置(mobile device)、个人数字助理(Personal Digital Assistant,PDA)、个人录像系统等。
以上所述者仅为公开的实施范例,当不能依此限定本发明实施的范围。即大凡本发明的权利要求书保护范围所作的均等变化与修改,皆应仍属本发明专利保护范围涵盖的范围。

Claims (19)

1.一种点对点实时串流系统,应用于一点对点网络中,该点对点网络中有一内容提供者以及收看同一实时串流频道的多个节点,该多个节点的每一节点上备有该系统,其特征在于,该系统包含:
一标志管理者模块,管理至少一标志;
一点对点模块,处理该多个节点之间的点对点信息及维护该点对点网络的结构;
一记录发布者模块,透过该点对点模块发布已记录像音串流内容的信息到该点对点网络中;以及
一记录管理者模块,管理该节点的一储存空间,并且根据该标志管理者模块的指挥,负责记录像音串流内容至该储存空间;
其中,该标志管理者模块通知该记录发布者模块发布已记录像音串流内容的信息及指挥该记录管理者模块记录串流数据。
2.如权利要求1所述的点对点实时串流系统,其特征在于,该多个节点的每一节点相对应的该储存空间的大小是可调整的。
3.如权利要求1所述的点对点实时串流系统,其特征在于,当该多个节点的每一节点相对应的该储存空间被填满时,该储存空间内的旧数据会被新记录的影音串流内容更新。
4.如权利要求1所述的点对点实时串流系统,其特征在于,该多个节点的每一节点采用该标志管理者模块,并以一相同的处理方式来管理标志,至少包括管理标志的加入、删除、及错误复原处理。
5.如权利要求1所述的点对点实时串流系统,其特征在于,该标志管理者模块以时间单位将该多个节点的每一节点所对应的该储存空间切割成多个区块,来记录像音串流数据,并且透过标志传递来规范该多个节点的那些节点必须记录该被切割的多个区块的那些区块中的部分影音串流内容。
6.如权利要求1所述的点对点实时串流系统,其特征在于,该标志管理者模块以一有限状态机来描述该多个节点传递该至少一标志的处理流程。
7.如权利要求1所述的点对点实时串流系统,其特征在于,该多个节点的每一节点有相对应的一上一节点及一下一节点,而该多个节点传递的至少一标志中,每一标志包括一节点的上一节点记录实时串流的部分数据内容的一起始时间及一结束时间的信息。
8.如权利要求5所述的点对点实时串流系统,其特征在于,该储存空间中,每一已储存完部分影音串流数据的记录区间备有一标头,来储存被记录的影音串流内容的频道信息与时间信息。
9.如权利要求8所述的点对点实时串流系统,其特征在于,该记录发布者模块利用一记录区间的标头里的频道信息与时间信息为键值,藉由一分布式杂凑表来决定出那一节点存有该记录区间里的影音串流数据的一节点清单。
10.如权利要求9所述的点对点实时串流系统,其特征在于,该节点清单至少包括该记录区间所储存的影音串流数据的记录的起始时间与完成时间,及该记录发布者模块相对应的节点指针的信息。
11.一种点对点实时串流方法,应用于一点对点网络上的实时串流系统,其特征在于,该方法包含:
将收看同一实时串流频道的多个节点组成一点对点网络;
当该多个节点中的一节点在收看一实时串流时,传递一标志,该标志上备有记录该实时串流的部分数据的时间信息;
收到该标志的节点依该标志上的时间信息,将该实时串流上所指定的一时间区间的数据记录于一储存空间后,以该时间区间为一键值发布至该点对点网络;以及
当该多个节点中的任一节点欲收看一时间点的实时串流时,以该时间点为键值至该点对点网络中,取得拥有该时间点的串流数据的至少一节点的地址信息,并向其中的一节点下载该时间点对应的一时间区间内的串流数据。
12.如权利要求11所述的点对点实时串流方法,其特征在于,该多个节点采用同一种杂凑函数对应,加入于该实时串流频道,而形成一个分布式杂凑表-网络,并且每一节点有一上一节点以及一下一节点。
13.如权利要求11所述的点对点实时串流方法,其特征在于,于该标志传递的路径中,传递该标志的节点与收到该标志的节点之间是以一种握手方式来协议。
14.如权利要求12所述的点对点实时串流方法,其特征在于,该时间区间的数据记录于该储存空间还包括:
传递该标志的节点将该标志传递给其下一节点后,持续记录目前影音串流内容至一相对应的记录区间;以及
待传递该标志的节点收到其下一节点的回复记录完成后,传递该标志的节点则停止记录该目前影音串流内容。
15.如权利要求12所述的点对点实时串流方法,其特征在于,以该时间区间为一键值发布至该点对点网络还包括:
透过一分布式杂凑表的对应,及配合一算法来选择一记录节点,传递该标志的节点将其已储存影音串流内容的相关信息发布至该记录节点;以及
该记录节点将该发布相关信息的节点及记录串流数据内容的一起始时间与一结束时间记录于一节点清单。
16.如权利要求15所述的点对点实时串流方法,其特征在于,该节点清单是以下列方式来产生:
将一影音串流对应的一时间码作为该分布式杂凑表的一输入键值;
透过该分布式杂凑表找出一指标,将该指标结合一对应表而产生存放该影音串流的节点清单。
17.如权利要求16所述的点对点实时串流方法,其特征在于,该输入键值是由一频道码与一时间码来决定。
18.如权利要求12所述的点对点实时串流方法,其特征在于,该错误复原处理至少包括回复确收延迟和/或遗失情况,以及标志延迟和/或遗失情况的处理。
19.如权利要求9所述的点对点实时串流方法,其特征在于,该串流数据的储存与管理皆采用分布式管理方式。
CN201010597241.0A 2010-11-04 2010-12-10 点对点实时串流系统 Active CN102469153B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
TW099137965A TWI415427B (zh) 2010-11-04 2010-11-04 同儕即時串流系統與方法
TW099137965 2010-11-04

Publications (2)

Publication Number Publication Date
CN102469153A true CN102469153A (zh) 2012-05-23
CN102469153B CN102469153B (zh) 2015-01-28

Family

ID=46020903

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201010597241.0A Active CN102469153B (zh) 2010-11-04 2010-12-10 点对点实时串流系统

Country Status (3)

Country Link
US (1) US8726327B2 (zh)
CN (1) CN102469153B (zh)
TW (1) TWI415427B (zh)

Families Citing this family (26)

* Cited by examiner, † Cited by third party
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
TW201414241A (zh) 2012-09-28 2014-04-01 Ibm 同步化一叢集中之多個資訊設備之slm狀態的方法、裝置與電腦程式產品
TWI478538B (zh) * 2012-11-28 2015-03-21 Inventec Corp 伺服器系統
US9549024B2 (en) 2012-12-07 2017-01-17 Remote Media, Llc Routing and synchronization system, method, and manager
TWI492581B (zh) * 2013-05-17 2015-07-11 Univ Nat Sun Yat Sen 即時影音串流的群播重傳系統及其方法
DE102013209940A1 (de) * 2013-05-28 2014-12-04 Conti Temic Microelectronic Gmbh Kamerasystem für Fahrzeuge
CN104283927A (zh) * 2013-07-09 2015-01-14 广州华久信息科技有限公司 一种基于无线局域网的信息实时分享方法
CN104717545A (zh) * 2013-12-17 2015-06-17 乐视网信息技术(北京)股份有限公司 一种视频播放方法及装置
CN104753984A (zh) * 2013-12-26 2015-07-01 乐视网信息技术(北京)股份有限公司 一种数据传送方法及装置
US10430120B2 (en) 2014-07-30 2019-10-01 Industrial Technology Research Institute Data object management method and data object management system
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实现移动音视频直播的系统及方法
US9787735B2 (en) 2015-08-27 2017-10-10 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
US20180027265A1 (en) * 2016-07-21 2018-01-25 Drop In, Inc. Methods and systems for live video broadcasting from a remote location based on an overlay of audio
TWI706672B (zh) * 2016-08-01 2020-10-01 瑞軒科技股份有限公司 多媒體播放方法
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
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

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1744500A (zh) * 2004-09-03 2006-03-08 微软公司 用于可缩放媒体的分布式流传送的系统和方法
CN101286927A (zh) * 2008-05-08 2008-10-15 蒋一 一种基于节点互连优化实现p2p流媒体系统的方法
CN101345638A (zh) * 2007-07-12 2009-01-14 中兴通讯股份有限公司 支持时移业务的对等系统
CN101483565A (zh) * 2008-01-11 2009-07-15 财团法人工业技术研究院 串流数据的网络传输系统与方法
US20100011103A1 (en) * 2006-09-28 2010-01-14 Rayv Inc. System and methods for peer-to-peer media streaming

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7624337B2 (en) 2000-07-24 2009-11-24 Vmark, 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
AU2003210803A1 (en) 2002-02-01 2003-09-02 John Fairweather A system and method for real time interface translation
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
US20070130597A1 (en) 2005-12-02 2007-06-07 Alcatel Network based instant replay and time shifted playback
EP2044771A2 (en) * 2006-07-24 2009-04-08 NDS Limited Peer-to-peer set-top box system
TW200833105A (en) 2006-08-24 2008-08-01 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
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 네트워킹을 통한 고품질 콘텐츠 제공 시스템 및 방법
US9003464B2 (en) * 2007-08-27 2015-04-07 At&T Intellectual Property I, L.P. System and method of verifying a video blackout event
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
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
US8572112B2 (en) 2007-11-02 2013-10-29 Microsoft Corporation Syndicating search queries using web advertising
KR101518089B1 (ko) * 2007-11-16 2015-05-15 톰슨 라이센싱 미디어 스트리밍의 세션 관리 시스템 및 방법
US20090174759A1 (en) 2008-01-04 2009-07-09 Viable Communications, Inc. Audio video communications device
TW200951832A (en) * 2008-04-15 2009-12-16 Novafora Inc Universal lookup of video-related data
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文件共享系统及其服务方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1744500A (zh) * 2004-09-03 2006-03-08 微软公司 用于可缩放媒体的分布式流传送的系统和方法
US20100011103A1 (en) * 2006-09-28 2010-01-14 Rayv Inc. System and methods for peer-to-peer media streaming
CN101345638A (zh) * 2007-07-12 2009-01-14 中兴通讯股份有限公司 支持时移业务的对等系统
CN101483565A (zh) * 2008-01-11 2009-07-15 财团法人工业技术研究院 串流数据的网络传输系统与方法
CN101286927A (zh) * 2008-05-08 2008-10-15 蒋一 一种基于节点互连优化实现p2p流媒体系统的方法

Also Published As

Publication number Publication date
TW201220767A (en) 2012-05-16
US20120117605A1 (en) 2012-05-10
US8726327B2 (en) 2014-05-13
CN102469153B (zh) 2015-01-28
TWI415427B (zh) 2013-11-11

Similar Documents

Publication Publication Date Title
CN102469153B (zh) 点对点实时串流系统
JP4676833B2 (ja) 拡張可能なメディアの分散ストリーミングのシステムおよび方法
JP5058468B2 (ja) ストリーミングメディアの消去耐性符号化のための方法、該方法を実行するコンピュータ実行可能命令を記録した媒体、及びシステム
US8370514B2 (en) System and method of minimizing network bandwidth retrieved from an external network
JP4920220B2 (ja) ピアツーピアネットワークでの受信側主導のシステム及び方法
US8464298B1 (en) Method and system to daisy-chain access to video resources
US9325786B2 (en) Peer-to-peer interactive media-on-demand
EP2314038B1 (en) System and method for ingesting media content in a peer-to-peer network
US8176192B2 (en) Networked transmission system and method for stream data
US7782851B2 (en) System and method of detecting lost video data packets
US20080263130A1 (en) Apparatus, system and method of digital content distribution
CN101652997B (zh) 用于高效递送数据内容的系统和方法
EP1806870B1 (en) Method for providing data and data transmission system
JP4761078B2 (ja) マルチキャストノード装置とマルチキャスト転送方法ならびにプログラム
Li et al. Peerstreaming: design and implementation of an on-demand distributed streaming system with digital rights management capabilities
Tian et al. A novel caching mechanism for peer-to-peer based media-on-demand streaming
Kermode Smart network caches: localized content and application negotiated recovery mechanisms for multicast media distribution
KR100616250B1 (ko) 인터넷 네트워크에서 서버와 클라이언트들 간의 데이터전송 시스템 및 방법
Ketmaneechairat et al. Smart buffer management for different start video broadcasting
Christakos Taking advantage of distributed multicast video to deliver and manipulate television
Ouali Delay-Centric Approach for Peer-to-Peer Video Live Streaming
Zimmermann et al. Retransmission-based error control for scalable streaming media systems
Feng et al. Peer-assisted media streaming: A holistic review
Ammal et al. Higher Quality of Service Through Peer-Assisted Streaming and Layered Video Coding
DEEPATHILAK et al. SCALABILITY AND THE BANDWIDTH EFFICIENCY OF VOD SYSTEMS

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant