异步多源流式传输制造技术

技术编号:12627317 阅读:70 留言:0更新日期:2016-01-01 02:53
本文描述了一种通过包含服务器代理和客户端代理的对等网络进行流式数据传输的方法。该方法包括:响应客户端代理对指定文件的请求,分配一个子流集合。子流集合包含一组服务器代理,配置用于将指定文件分割为帧,帧的大小根据指定文件进行配置。子流集合包含多个活动服务器代理并进一步包含根据网络属性选择的多个冗余活动服务器代理,以便最大程度减少发送给客户端代理的多余数据包数量;异步管理子流集合,使每个服务器代理以独立于子流集合中其他服务器代理的方式进行流式帧传输;按照子流集合采取基于速率的拥塞控制,使得与该子流集合相关的比特率维持在指定阈值之上。

【技术实现步骤摘要】

本专利技术涉及计算机对等网络(Peer-to-Peer,简称P2P)领域,更具体而言,涉及在此类网络中的数据文件流式传输。
技术介绍
今天,文件分享日益普遍,而且随着计算机网络的发展壮大,人们在进行流式数据传输时,越来越需要找到一种能够最大程度利用分享代理的高效方法。由于对等网络的分布式特性,以及长时间内分享代理可用性的不确定性,在对等网络中保持服务质量是一项挑战。BitTorrent协议是一种广泛使用的对等网络协议。通过此协议,用户可以分发大量数据,却不会像标准的互联网托管那样让计算机不堪重负。如果同时传输的数据流达到较高水平,标准主机的服务器很容易当机。在实际运作中,一个扮演文件提供者角色的用户向网络提供文件。这第一个用户的文件称为种子。网络上有了种子文件后,其他用户就可以连接到种子文件并开始下载,这些用户称为对等节点。随着新的对等节点不断连接到网络并请求下载相同的文件,他们的计算机会收到种子文件的不同数据块。当多个对等节点拥有种子文件的多个数据块之后,BitTorrent让每个对等节点成为该部分文件数据块的源。采用这种做法,文件下载任务将在种子节点和众多对等节点中分配,让每个对等节点承担一小部分任务,从而减轻种子节点的负担。使用BitTorrent,任何一台计算机都无需提供大量数据,从而不会因为要提供所有资源而负担过重,继而危害到任务,同时仍能实现相同的最终结果(每个对等节点最终都能收到整个文件)。当某个对等节点成功下载完整个文件后,该对等节点可以转换角色,成为另一个种子,帮助其余的对等节点接收整个文件。从对等节点到种子节点的这一最终转换决定了文件的总体“健康状况”(根据文件完整可用的次数决定)。
技术实现思路
一方面,本专利技术描述了一个通过对等网络进行流式数据传输的系统。该系统包括:一个包含代理的对等网络,每个代理可配置为以下至少一种类型:用于接收数据的客户端代理和用于进行流式数据传输的服务器代理。该系统进一步包括一个流式传输管理站,经配置用于:(i)响应客户端代理对指定文件的请求,分配一个子流集合。子流集合包含多个服务器代理,配置用于将指定文件分割为帧,帧的大小根据指定文件进行配置。子流集合包含多个活动服务器代理并进一步包含根据网络属性选择的多个冗余活动服务器代理,以便最大程度减少发送给客户端代理的多余数据包数量;(ii)异步管理子流集合,使每个服务器代理以独立于子流集合中其他服务器代理的方式进行流式帧传输。该系统进一步包括一个拥塞减轻单元,该单元配置用于对每个子流集合采取基于速率的拥塞控制,使得与该子流集合相关的比特率维持在指定阈值之上。在其他方面,本专利技术包括一种独立于上述架构执行上述系统的方法,以及一个经配置用于执行上述系统的计算机可读取程序。关于本专利技术的这些方面,和/或其他方面,和/或本专利技术实施方式的优点,下文将进行详细阐述;也可以从下文的详细阐述中推断得出;和/或通过执行本专利技术的实施方式在实践中发现。【附图说明】为了促进对本专利技术实施方式的理解并演示如何执行本专利技术的实施方式,本文将完全以实例的方式来说明所附图样,其中相同数字在全文中对应相同的元素或部分。在所附图样中:图1是一个高层级示意图,展示本专利技术的某些实施例中采用的系统环境;图2是一个高层级流程图,展示本专利技术的某些实施例中采用的实施方法。这些图样连同下文的详细说明将让熟悉该
的人士明白本专利技术是如何付诸实践的。【具体实施方式】在进行详细说明之前,为帮助阅读和理解,先定义下文将使用的某些术语。本申请中所用的“代理”一词是指一种软件抽象机制、一种理念或概念,类似于“方法”、“功能”和“对象”之类的面向对象编程术语。代理的概念能够方便、有力地描述一种具有一定程度的行为自主性,能代表用户完成某些任务的复杂软件实体。但是代理不像对象那样是根据方法和属性来定义的,而是根据其行为来定义的。“对等网络” 一词常缩写为“P2P”,本申请中也采用此缩写,它是指符合以下情况的任何分布式网络架构:无需中央协调机制(例如服务器或稳定的主机),由参与者将其部分资源(例如处理能力、磁盘存储或网络带宽)直接提供给网络中的其他参与者。在对等网络模式中,对等节点是资源的提供者和使用者,而在传统的客户端-服务器模式中,服务器只是提供者,客户端只是使用者。在具体参照所附图样时,须强调所示细节只是为了方便讨论本专利技术的优选实施方式而举出的实施例,目的在于提供最有用的说明,使读者更容易理解本专利技术的原理和概念。因此,除了帮助读者建立对本专利技术的基本理解外,在此并没有为了解释本专利技术而过多地展示其详细结构,对图样的说明将使熟悉该
的人士明白本专利技术的各种形式是如何付诸实践的。在详细解释本专利技术的至少一种实施方式之前,读者须理解,本专利技术的应用并不限于以下说明或图样中所列举和展示出来的结构细节和组件排列。本专利技术可以有其他的实施方式,也能够以各种不同的方式来实践或执行。同样,在此所使用的措词和术语是为了方便说明描述,不应被认为是限制性的。图1显示了根据本专利技术的某些实施方式部署的系统100。系统100嵌入于一个包含代理(例如10、20、30、40)的对等网络中,每个代理可成为客户端代理10或服务器代理(20、30、40)。客户端代理10用于接收数据,而服务器代理(20、30和40)用于通过对等网络进行流式数据传输。另外,系统100进一步包括一个流式传输管理站110和一个拥塞减轻单元120,它们连接到对等网络并且能够控制每个代理(例如10、20、30和40)。在实际运作中,流式传输管理站110配置用于:响应客户端代理10对指定文件的请求,分配一个子流集合。子流集合包含多个服务器代理,配置用于将指定文件分割为帧,帧的大小根据指定文件进行配置。子流集合包含多个活动服务器代理并进一步包含根据网络属性选择的多个冗余活动服务器代理20A-D,以便最大程度减少发送给客户端代理10的多余数据包数量;并且流式传输管理站110进一步配置用于异步管理子流集合,使得20A-D中的每个服务器代理以独立于子流集合中其他服务器代理的方式进行流式帧传输。另外,拥塞减轻单元120配置用于对每个子流集合采取基于速率的拥塞控制,使得与该子流集合相关的比特率维持在指定阈值之上。图2是一个高层级流程图,展示本专利技术的某些实施例中采用的实施方法。应理解的是,方法200不一定要通过上述的系统100架构来实施。方法200包括以下阶段:提供一个包含代理的对等网络,每个代理可配置为以下至少一种类型:配置用于接收数据的客户端代理和配置用于进行流式数据传输的服务器代理210 ;响应客户端代理对指定文件的请求,分配一个子流集合。子流集合包含多个服务器代理,配置用于将指定文件分割为帧,帧的大小根据指定文件进行配置。子流集合包含多个活动服务器代理并进一步包含根据网络属性选择的多个冗余活动服务器代理,以便最大程度减少发送给客户端代理的多余数据包数量220 ;异步管理子流集合,使每个服务器代理以独立于子流集合中其他服务器代理的方式进行流式帧传输230 ;以及对每个子流集合采取基于速率的拥塞控制,使得与该子流集合相关的比特率维持在指定阈值之上240。根据本专利技术的一种实施方式,流式传输管理站110进一步配置用于分配子流集合,使其进一步包括本文档来自技高网
...

【技术保护点】
通过包含代理的对等网络进行流式数据传输的方法,每个代理可配置为以下至少一种类型:用于接收数据的客户端代理和用于进行流式数据传输的服务器代理。该方法包括:响应客户端代理对指定文件的请求,分配一个子流集合。子流集合包含多个服务器代理,配置用于将指定文件分割为帧,帧的大小根据指定文件进行配置。子流集合包含多个活动服务器代理以及多个保留服务器代理,这些代理经过调整,以便最大程度减少发送给客户端代理的多余数据包数量;异步管理子流集合,使每个服务器代理经过调整,可以按独立于子流集合中其他服务器代理的方式进行流式帧传输;对子流集合中的每个流采取基于速率的拥塞控制,进一步包括:通过检查来自并发发送会话的数据包丢失报告来确定多个服务器代理中至少一个代理的上行通道的拥塞情况,从而确定是否降低从至少一个服务器代理发送的数据包的发送速率和/或删除与至少一个服务器代理相关的服务会话;通过检查子流集合中多个子流的数据包丢失情况来确定客户端代理下行通道的拥塞情况,从而确定是否延长从每个服务器代理发送的数据包之间的发送间隔;其中基于速率的拥塞控制经过调整,能够将与子流集合相关的比特率维持在指定阈值之上。

【技术特征摘要】

【专利技术属性】
技术研发人员:Y·M·赞格G·M·加D·沃尔克S·托尔钦
申请(专利权)人:格瑞菲技术有限公司
类型:发明
国别省市:以色列;IL

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1