CN104023006A - 一种基于应用层中继的多径传输系统及方法 - Google Patents

一种基于应用层中继的多径传输系统及方法 Download PDF

Info

Publication number
CN104023006A
CN104023006A CN201410196986.4A CN201410196986A CN104023006A CN 104023006 A CN104023006 A CN 104023006A CN 201410196986 A CN201410196986 A CN 201410196986A CN 104023006 A CN104023006 A CN 104023006A
Authority
CN
China
Prior art keywords
relay
relay services
path
user agent
transponder
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
CN201410196986.4A
Other languages
English (en)
Other versions
CN104023006B (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.)
Northeastern University China
Original Assignee
Northeastern University China
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 Northeastern University China filed Critical Northeastern University China
Priority to CN201410196986.4A priority Critical patent/CN104023006B/zh
Publication of CN104023006A publication Critical patent/CN104023006A/zh
Application granted granted Critical
Publication of CN104023006B publication Critical patent/CN104023006B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

一种基于应用层中继的多径传输系统及方法,该系统包括用户代理和中继服务系统;中继服务系统包括:中继服务控制器和中继服务转发器;该方法包括步骤1:中继服务转发器进行注册;步骤2:中继服务控制器获取中继服务转发器的信息;步骤3:作为发送端的用户代理获取中继路径;步骤4:作为发送端的用户代理沿着获取的中继路径进行数据传输;步骤5:中继服务转发器转发数据;步骤6:作为接收端的用户代理将接收到的数据重组为原始数据流并传递给上层应用,并向作为发送端的用户代理发送中继路径的传输质量信息;步骤7:作为发送端的用户代理调整数据流划分策略;步骤8:重复执行步骤4至步骤7,直至数据传输完毕;步骤9:释放中继路径。

Description

一种基于应用层中继的多径传输系统及方法
技术领域
本发明属于网络通信技术领域,具体涉及一种基于应用层中继的多径传输系统及方法。 
背景技术
传统IP网络中数据传输主要依赖基于网络层缺省路由的单一路径,上层网络协议没有选择传输路径的能力。然而,缺省路由路径在很多情况下并不是最优的,特别是当经过由不同ISP(Internet Service Provider,网络服务提供商)提供的网络时,ISP通常选择适合于本地策略需求的域间路由,而不是选择具有最好性能的路径,这将导致缺省路由通常具有较低的可靠性和可用性。另外,基于传统路由技术构建的单径传输模式,难以满足高带宽、高速率媒体传输应用的需求,已成为制约高清视频等高带宽业务需求应用的发展瓶颈。因此,终端用户通常在端到端延时、丢包率和吞吐量等方面获得不了最优性能。 
随着4G、光纤到户等接入网络技术的发展,具有高接入带宽的用户终端日益普遍,网络带宽瓶颈正逐渐由用户接入网络转移到骨干网络。因此,在通信端点之间并发使用多条路径即多径传输,将有助于突破单经传输的带宽约束,在一定程度上提升网络资源利用率,提高网络可靠性和吞吐量,同时增强用户的业务体验。多路径传输已被证明是一种可用于提高数据传送效率的有效方式。 
为了实现多径传输,关键问题之一是如何构建源端和目的端之间的多条路径。在网络层,目前传统的IP基础设施只能提供单一的默认路径;如果底层网络支持源路由(source routing),源端可以发现到达目的端的所有可能的路由,然而每个数据包需要携带所有经由设备的地址信息,对于长路径来说这将导致较高的开销,而且需要对现有的网络架构进行重大变更,网络设备比如路由器需要执行特定的处理行为。在传输层,相关研究利用具有多个网络接口的终端设备(即多宿主机,multi-homed hosts)建立端到端的多条路径,具有多种无线网络和有线网络接口的终端设备逐步增多为此方面研究奠定了基础,然而这种传输层多径传输方法需要特定的终端设备网络环境,而且需要更新终端设备现有的网络协议栈,因此与网络层多径传输技术一样面临着大规模部署的问题。MPRTP(Multipath Realtime Transport Protocol,多径实时传输协议)草案定义了一种多径实时传输协议,虽然是应用层协议,但是仅限于实时媒体的多径传输应用,而且也限制于多宿主主机的网络条件。 
总的来说,虽然多径传输近年来受到越来越多的关注,但是目前所有的多径传输方法存在以下的一种或多种缺点:1)只适用于一种特定类型的应用程序,比如多媒体数据的实时传输或者数据流的可靠传输;2)对终端设备的网络设置有一定要求,比如多宿主设备;3)对网络设备比如路由器的处理行为有一定要求。 
发明内容
针对现有技术存在的不足,本发明提供一种基于应用层中继的多径传输系统及方法。 
本发明的技术方案: 
一种基于应用层中继的多径传输系统,包括:用户代理和中继服务系统; 
所述用户代理为位于终端设备的逻辑实体,处在网络协议栈的应用层,用于基于传输层用户数据报协议UDP,为上层应用提供多径数据传输;所述用户代理划分为作为发送端的用户代理和作为接收端的用户代理; 
所述中继服务系统置于作为发送端的用户代理和作为接收端的用户代理之间,包括一个或多个中继服务控制器,以及一个或多个中继服务转发器;所述中继服务系统用于为用户代理之间的数据传输提供中继路径;所述中继路径为用户代理之间经由一个或多个中继服务转发器的路径; 
所述作为发送端的用户代理:用于根据从中继服务控制器获得的一条或多条中继路径的路径信息,将从上层应用接收的原始数据流封装为子流多径传输数据包,并沿着一条或多条中继路径发送至作为接收端的用户代理; 
所述作为接收端的用户代理用于将接收到的子流多径传输数据包重组为原始数据流,并传递至上层应用; 
所述中继服务控制器用于管理所述中继服务转发器和所述中继路径; 
所述中继服务转发器用于基于传输层用户数据报协议UDP转发用户代理之间所传输的数据。 
根据所述的基于应用层中继的多径传输系统,所述用户代理:包括:路径管理模块、特定应用传输处理模块、子流划分模块、子流封装与解封装模块、子流重组模块和子流传输质量报告模块; 
所述路径管理模块:(a)用于在数据传输之前或数据传输过程中,向中继服务控制器发送路径分配请求消息,并从中继服务控制器收集中继路径信息;所述中继路径信息包括路径标识符和作为发送端的用户代理的下一跳传输地址;(b)为了防止中继服务转发器对在预设时间阈值内没有进行数据传输的中继路径进行回收,路径管理模块周期性地为中继路径发送子流保活包对中继路径进行维护;(c)当用户代理之间的数据传输结束后,向中继服务控制器发送路径释放请求消息; 
所述特定应用传输处理模块用于根据应用类型完成特定的传输处理:(a)对于从上层应用接收到的待发送的原始数据流,若应用类型为需要实时传输的音视频数据,则对时间戳标记、编解码类型和整流序列号进行设置,并将设置后的数据流传递给子流划分模块;若应用 类型为需要可靠传输的文件数据,则对整流序列号、起始标记和结束标记进行设置并将设置后的数据流传递给子流划分模块,以及进行拥塞控制、差错控制和重传控制;(b)对于从子流重组模块接收到的重组后的数据子流,若应用类型为需要实时传输的音视频数据,则根据时间戳标记和整流序列号,重组为原始数据流并传递给上层应用;若应用类型为需要可靠传输的文件数据,则根据整流序列号进行选择性确认,并根据整流序列号、起始标记和结束标记重组为原始数据流传递给上层应用,以及进行拥塞控制和差错控制; 
所述子流划分模块用于选择一条或者多条中继路径作为活动路径,并根据数据流划分策略,将从特定应用传输处理模块接收到的待发送的数据流,划分成若干待发送的数据子流,且将每个待发送的数据子流绑定到一条活动路径,传递给子流封装与解封装模块;所述数据流划分策略根据应用类型和中继路径的传输质量信息进行制定; 
所述子流封装与解封装模块:(a)用于将从子流划分模块接收到的待发送的数据子流按照多径传输控制协议封装为一个或多个子流多径传输数据包,并基于传输层用户数据报协议UDP发送至该数据子流所绑定的活动路径的下一跳传输地址;所述子流多径传输数据包,包括子流多径传输数据包首部和子流多径传输数据包载荷;所述子流多径传输数据包首部含有路径标识符和子流序列号;所述子流多径传输数据包载荷指的是构成数据子流的数据块; 
(b)用于基于传输层用户数据报协议UDP接收到子流多径传输数据包后,提取出数据子流的数据块以及相应的路径标识符和子流序列号,并传递给子流重组模块; 
所述子流重组模块用于根据相应的路径标识符和子流序列号,对接收到的数据子流的数据块进行重组,并将重组后的数据子流传递给特定应用传输处理模块; 
所述子流传输质量报告模块用于统计和反馈中继路径的数据传输质量:(a)作为发送端的用户代理为每个活动路径产生子流发送者报告包,所述子流发送者报告包携带路径标识符、时间戳、已发送子流多径传输数据包的子流序列号最大值、已发送数据子流的字节数,沿着该活动路径传送至作为接收端的用户代理;(b)作为接收端的用户代理统计每个活动路径的传输质量信息,并为每个活动路径产生子流接收者报告包;所述子流接收者报告包携带路径标识符、丢包率、抖动和往返时延,发送至作为发送端的用户代理。 
根据所述的基于应用层中继的多径传输系统,所述中继服务控制器,包括:中继服务转发器管理模块、中继网络管理模块和中继路径管理模块; 
所述中继服务转发器管理模块:(a)处理来自于中继服务转发器的中继服务注册消息、中继服务开启消息、中继服务暂停消息以及中继服务关闭消息;(b)收到中继服务注册消息之后,向发送该消息的中继服务转发器发送性能查询消息,以查询该中继服务转发器的性能信息,包括:处理器能力、存储能力和网络带宽;(c)周期性地向每个中继服务转发器发送状 态查询消息,以查询中继服务转发器当前的负载信息,包括:中继路径个数、处理器使用率和网络带宽使用率; 
所述中继网络管理模块:(a)向每个中继服务转发器发送连接保活消息,以获得每个中继服务转发器所关联的覆盖路径以及覆盖路径的传输性能;(b)管理中继网络的拓扑信息;所述覆盖路径由多个物理链路组成;所述覆盖路径的传输性能包括丢包率、延时和可用带宽;所述中继网络由中继服务转发器及中继服务转发器之间的覆盖路径组成;所述拓扑信息是指任意两个中继服务转发器之间是否存在覆盖路径以及该覆盖路径的传输性能; 
所述中继路径管理模块:(a)在接收到作为发送端的用户代理发送的路径分配请求消息后,为用户代理之间的数据传输分配一条或多条中继路径,并为每条中继路径分配一个唯一的路径标识符,并向中继路径所经由的所有中继服务转发器和作为发送端的用户代理发送中继路径信息,所述发送给中继服务转发器的中继路径信息,包括路径标识符和该中继服务转发器的下一跳传输地址;所述发送给作为发送端的用户代理的中继路径信息,包括路径标识符和作为发送端的用户代理的下一跳传输地址;(b)在接收到作为发送端的用户代理发送的路径释放请求消息后,查找该消息所对应的中继路径,并向中继路径上所有的中继服务转发器发送路径删除请求消息,释放所分配的中继路径。 
根据所述的基于应用层中继的多径传输系统,所述中继服务转发器包括中继服务管理模块、拓扑发现和性能测量模块、路径表管理模块和子流转发模块; 
所述中继服务管理模块:(a)中继服务转发器启动后,向中继服务控制器发起中继服务注册消息进行中继服务注册,所述中继服务注册消息包括中继服务转发器标识符、提供中继服务的地址和端口信息;(b)在中继服务注册成功之后,向中继服务控制器发送中继服务开启消息,以告知中继服务控制器已开始中继服务;(c)向中继服务控制器发送中继服务暂停消息,以告知中继服务控制器暂停接收新的路径添加消息;(d)在断开与中继服务控制器的连接之前向中继服务控制器发送中继服务关闭消息; 
所述拓扑发现和性能测量模块;(a)通过拓扑发现过程,确定本中继服务转发器与其它中继服务转发器之间的覆盖路径;(b)通过性能测量过程,获取本中继服务转发器所关联的覆盖路径的传输性能;(c)将本中继服务转发器所关联的覆盖路径以及覆盖路径的传输性能信息传送给中继服务控制器; 
所述路径表管理模块用于根据来自于中继服务控制器的路径添加请求消息和路径删除请求消息,对本地路径表进行中继路径的添加和中继路径的删除操作;所述本地路径表用于存储经由本中继服务转发器的中继路径信息,该中继路径信息包括路径标识符和该中继服务转发器的下一跳传输地址; 
所述子流转发模块用于基于传输层用户数据报协议UDP并基于本地路径表对数据子流包进行转发;所述数据子流包,包括:子流多径传输数据包、子流发送者报告包和子流保活包。 
采用所述的基于应用层中继的多径传输系统的多径传输方法,包括以下步骤: 
步骤1:中继服务转发器向中继服务控制器注册并开启中继服务; 
步骤1.1:中继服务转发器启动后,向中继服务控制器发起中继服务注册消息进行中继服务注册; 
步骤1.2:在中继服务注册成功之后,中继服务转发器向中继服务控制器发送中继服务开启消息,以告知中继服务控制器已开始中继服务; 
步骤2:中继服务控制器获取中继服务转发器的性能信息和状态信息,以及中继服务转发器之间的覆盖路径信息; 
步骤2.1:中继服务控制器向注册后的中继服务转发器发送性能查询消息,以查询该中继服务转发器的性能信息,包括:处理器能力、存储能力和网络带宽; 
步骤2.2:中继服务控制器周期性地向每个中继服务转发器发送状态查询消息,以查询中继服务转发器当前的负载信息,包括:中继路径个数、处理器使用率和网络带宽使用率; 
步骤2.3:中继服务控制器向注册后的中继服务转发器发送连接保活消息,以查询中继服务转发器所关联的覆盖路径以及覆盖路径的传输性能; 
步骤3:作为发送端的用户代理从中继服务控制器获取一条或者多条中继路径; 
步骤4:作为发送端的用户代理按照数据流划分策略,对从上层应用获得的原始数据流进行划分成数据子流,并沿着所获取的中继路径进行数据传输; 
步骤5:中继服务转发器根据本地路径表,且基于传输层用户数据报协议UDP,向作为接收端的用户代理或者下一跳中继服务转发器转发数据; 
步骤6:作为接收端的用户代理将接收到的数据重组为原始数据流并传递给上层应用,并向作为发送端的用户代理发送中继路径的传输质量信息; 
步骤7:作为发送端的用户代理根据接收到的中继路径的传输质量信息,调整数据流划分策略; 
步骤8:重复执行步骤4至步骤7,直至待发送的数据流全部传输完毕; 
步骤9:释放中继路径。 
根据所述的基于应用层中继的多径传输方法,步骤3作为发送端的用户代理从中继服务控制器获取中继路径,包括以下两种方式: 
第一种方式:作为发送端的用户代理直接从中继服务控制器获取中继路径,包括以下步骤: 
步骤3.1:作为发送端的用户代理向中继服务控制器发送路径分配请求消息; 
路径分配请求消息携带作为发送端的用户代理的数据传输地址信息、作为接收端的用户代理的数据传输地址信息和所需的中继路径条数; 
步骤3.2:根据接收到的路径分配请求消息和中继服务转发器的性能信息和状态信息,中继服务控制器选择一条或多条中继路径,并为每条中继路径分配一个唯一的路径标识符; 
步骤3.3:中继服务控制器向所选择的中继路径上的所有中继服务转发器发送路径添加请求消息; 
路径添加请求消息携带路径标识符和接收该消息的中继服务转发器的下一跳传输地址信息; 
步骤3.4:中继服务转发器根据路径添加请求消息,检查本地路径表是否存在该消息所指定的中继路径,若存在,则该中继服务转发器拒绝该路径添加请求消息并向中继服务控制器回复一个路径添加失败响应消息;若不存在,则该中继服务转发器将该消息所指定的中继路径的路径信息添加至本地路径表中,并向中继服务控制器回复一个路径添加成功响应消息; 
步骤3.5:中继服务控制器判断当前分配成功的中继路径条数是否符合路径分配请求消息要求的中继路径条数,是,则执行步骤3.6,否,则执行步骤3.2; 
若中继服务控制器所选择的一条中继路径上至少一个中继服务转发器回复了路径添加失败响应消息,则该条中继路径分配失败;若中继服务控制器所选择的一条中继路径上所有中继服务转发器均回复了路径添加成功响应消息,则该条中继路径分配成功; 
步骤3.6:中继服务控制器向作为发送端的用户代理发送路径分配响应消息; 
所述路径分配响应消息携带有所有分配成功的中继路径的路径信息,包括:路径标识符和作为发送端的用户代理的下一跳传输地址; 
第二种方式:作为发送端的用户代理利用建立数据传输会话的带外信令从中继服务控制器获取中继路径,其方法如下: 
带外信令服务器在接收到来自于作为发送端的用户代理的建立数据传输会话的信令请求时,代替作为发送端的用户代理从中继服务控制器获取中继路径,并将获得的中继路径信息插入到相应的信令消息传送给作为发送端的用户代理。 
根据所述的基于应用层中继的多径传输方法,步骤4包括以下步骤: 
步骤4.1根据数据传输需求和路径分配响应消息,作为发送端的用户代理选择一条或者多条中继路径作为活动路径; 
步骤4.2:作为发送端的用户代理根据应用类型对待发送数据进行特定的传输处理; 
若应用类型为需要实时传输的音视频数据,作为发送端的用户代理设置时间戳标记、编 解码类型和整流序列号;若应用类型为需要可靠传输的文件数据,作为发送端的用户代理设置整流序列号、起始标记和结束标记,并进行拥塞控制、差错控制和重传控制; 
步骤4.3:作为发送端的用户代理根据数据流划分策略,将待发送的数据流划分成若干待发送的数据子流,且分别将每个待发送的数据子流绑定到一条活动路径; 
步骤4.4:作为发送端的用户代理将数据子流按照多径传输控制协议封装为一个或多个子流多径传输数据包,并基于传输层用户数据报协议UDP将该一个或多个子流多径传输数据包发送至所述数据子流所绑定的活动路径的下一跳传输地址; 
步骤4.5:作为发送端的用户代理周期性地为每个活动路径产生子流发送者报告包,并基于传输层用户数据报协议UDP将该子流发送者报告包发送至该活动路径的下一跳传输地址; 
所述子流发送者报告包携带路径标识符、时间戳、已发送子流多径传输数据包的子流序列号最大值、已发送数据子流的字节数; 
步骤4.6:作为发送端的用户代理周期性地为在预设时间阈值内没有进行数据传输的中继路径产生子流保活包,并基于传输层用户数据报协议UDP将该子流保活包发送至该中继路径的下一跳传输地址。 
根据所述的基于应用层中继的多径传输方法,步骤5包括以下步骤: 
步骤5.1:中继服务转发器基于传输层用户数据报协议UDP从作为发送端的用户代理或者上一跳中继服务转发器接收数据子流包; 
步骤5.2:从接收到的数据子流包中提取路径标识符,根据路径标识符在本地路径表中进行匹配查找,若匹配失败,则丢弃该数据子流包;若匹配成功,则基于传输层用户数据报协议UDP向作为接收端的用户代理或者下一跳中继服务转发器转发所接收到的数据子流包。根据所述的基于应用层中继的多径传输方法,步骤6包括以下步骤: 
步骤6.1:作为接收端的用户代理基于传输层用户数据报协议UDP接收子流多径传输数据包,并提取出子流数据块以及相应的路径标识符和子流序列号信息; 
步骤6.2:作为接收端的用户代理按照路径标识符和子流序列号对数据子流进行重组; 
步骤6.3:作为接收端的用户代理根据应用类型对重组后的数据子流进行特定的传输处理,重组出原始数据流并传递给上层应用; 
若应用类型为需要实时传输的音视频数据,作为接收端的用户代理处理时间戳标记、编解码类型和整流序列号,并根据时间戳标记和整流序列号,重组出原始数据流传递给上层应用;若应用类型为需要可靠传输的文件数据,作为接收端的用户代理根据整流序列号进行选择性确认,并根据整流序列号、起始标记和结束标记重组出原始数据流传递给上层应用,以 及进行拥塞控制和差错控制 
步骤6.4:作为接收端的用户代理统计每个活动路径的传输质量信息,并在接收到子流发送者报告包后为每个活动路径产生子流接收者报告包,并基于传输层用户数据报协议UDP将该子流接收者报告包发送至作为发送端的用户代理; 
所述子流接收者报告包携带路径标识符、丢包率、抖动和往返时延。 
根据所述的基于应用层中继的多径传输方法,步骤9释放中继路径,包括以下两种方式: 
第一种方式:作为发送端的用户代理直接请求中继服务控制器释放中继路径,包括以下步骤: 
步骤9.1:作为发送端的用户代理向中继服务控制器发送路径释放请求消息; 
路径释放请求消息携带一个或多个路径标识符; 
步骤9.2:根据接收的路径释放请求消息,中继服务控制器查找与路径标识符相对应的中继路径,并向中继路径上所有的中继服务转发器发送路径删除请求消息; 
路径删除请求消息携带路径标识符; 
步骤9.3:根据接收的路径删除请求消息,中继服务转发器从本地路径表中删除该消息所指定的中继路径,并向中继服务控制器回复一个路径删除成功响应消息; 
步骤9.4:中继服务控制器向作为发送端的用户代理发送路径释放响应消息,中继路径释放完毕; 
第二种方式:作为发送端的用户代理利用结束数据传输会话的带外信令请求中继服务控制器释放中继路径,其方法如下: 
带外信令服务器在接收到来自于作为发送端的用户代理的结束数据传输会话的信令请求时,代替作为发送端的用户代理请求中继服务控制器释放中继路径。 
本发明的有益效果: 
1、网络无关性:现有的IP网络无需做任何修改;欲采用多径传输的终端设备无需任何特定的网络环境; 
2、通用性:中继路径所经由的中继服务转发器仅提供与具体应用无关的简单UDP转发服务,因此本发明是一种通用的多径传输系统及方法,适合于各种上层应用; 
3、集中式控制:中继服务控制器提供集中化的路径分配控制功能,便于实施网络拓扑相关的策略,有利于从更宏观的角度调配传输带宽等网络资源,提高网络资源的利用率。 
附图说明
图1为本发明一种实施方式的基于应用层中继的多径传输系统结构示意图; 
图2为本发明一种实施方式的用户代理的结构示意图; 
图3为本发明一种实施方式的中继服务控制器的结构示意图; 
图4为本发明一种实施方式的中继服务转发器的结构示意图; 
图5为本发明一种实施方式的基于应用层中继的多径传输方法流程图; 
图6为本发明一种实施方式的基于应用层中继的多径传输过程示意图。 
具体实施方式
下面结合附图对本发明的一种实施方式作详细说明。 
本实施方式的基于应用层中继的多径传输系统,如图1所示,包括:用户代理和中继服务系统; 
用户代理为位于终端设备的逻辑实体,处在网络协议栈的应用层,用于基于传输层用户数据报协议UDP,为上层应用提供多径数据传输。在一次数据传输过程中,负责发送数据的用户代理称为作为发送端的用户代理;负责接收数据的用户代理称为作为接收端的用户代理。 
中继服务系统置于作为发送端的用户代理和作为接收端的用户代理之间,由中继服务控制器和中继服务转发器组成。中继服务系统用于为用户代理之间的数据传输提供中继路径。中继路径为用户代理之间经由一个或多个中继服务转发器的路径。 
作为发送端的用户代理根据从中继服务控制器获得的一条或多条中继路径的路径信息,将从上层应用接收的原始数据流封装为子流多径传输数据包,并沿着一条或多条中继路径发送至作为接收端的用户代理。作为接收端的用户代理将接收到的子流多径传输数据包重组为原始数据流,并传递至上层应用。 
本实施方式中的中继服务控制器负责管理中继服务系统中的中继服务转发器和中继路径。中继服务控制器与其它组件之间的通信遵循中继服务控制协议。当存在大量终端用户和中继服务转发器时,系统可以部署多个中继服务控制器,每个中继服务控制器管理一部分中继服务转发器,并为一部分终端用户提供中继路径。 
本实施方式中的中继服务转发器用于基于传输层用户数据报协议UDP转发用户代理之间所传输的数据。根据本地存储的路径表进行数据包的路由以及转发。通过大量部署中继服务转发器,系统可以为通信端点提供经由中继服务转发器的中继路径,为终端之间的通信提供多径条件。用户代理可以自主地选择一条或者多条路径进行数据传送。中继服务转发器可以以不同的方式加以部署。根据具体应用的需求,应用业务提供商可以在系统中部署大量的具有高性能的专用服务器,形成一个稳定的网络,这些专用服务器通常具有很高的网络带宽以及计算性能。另外,系统中访问相同应用的参与节点自身也可以自行组织起来,形成一个动态的网络,其中具有较高性能的节点可以为其它节点提供中继转发功能。 
本实施方式中的作为发送端的用户代理负责收集备选的中继路径。如图1所示,用户代 理可采用两种可选方式收集备选的中继路径:第一种方式是,作为发送端的用户代理使用中继服务控制协议直接与中继服务控制器交互,从而获得备选中继路径;第二种方式是,作为发送端的用户代理利用在通信端点之间建立会话的带外信令获取备选的中继路径,带外信令服务器需要加以扩展以支持中继服务控制协议所提供的接口,在接收到通信端点的要求建立通信会话的信令请求时,带外信令服务器代替用户代理向中继服务控制器请求分配中继路径,并将所分配的中继路径信息插入到相应的信令消息发送给作为发送端的用户代理。第二种方式的优点是可以避免中继服务控制器和用户代理之间的大量连接,节省资源同时保证了系统可扩展性,另外,通过限制只与可信任的带外信令服务器之间通信,可以提升中继服务控制器的安全性。 
本实施方式中的用户代理的功能结构如图2所示,包括路径管理模块、特定应用传输处理模块、子流划分模块、子流封装与解封装模块、子流重组模块和子流传输质量报告模块。 
路径管理模块负责收集和维护多条中继路径。如前面所述,作为发送端的用户代理可以通过两种方式收集备选的中继路径:建立通信会话的带外信令和中继服务控制协议。对于第一种方式,在数据传输之前或数据传输过程中,路径管理模块向中继服务控制器发送路径分配请求消息,从路径分配成功响应消息中获得一条或多条中继路径的路径信息。中继路径信息包括路径标识符和作为发送端的用户代理的下一跳传输地址。为了防止中继服务转发器对在预设时间阈值内没有进行数据传输的中继路径进行回收,路径管理模块周期性地为中继路径发送子流保活包对中继路径进行维护。当用户代理之间的数据传输结束后,路径管理模块向中继服务控制器发送路径释放请求消息。 
特定应用传输处理模块负责根据应用类型完成特定的传输处理,比如音视频媒体数据的实时传输要求表达数据之间的时间关系,文件共享等可靠性传输要求具有丢包重传的可靠性保护机制、流量控制等。对于从上层应用接收到的待发送的原始数据流,若应用类型为需要实时传输的音视频数据,特定应用传输处理模块对时间戳标记、编解码类型和整流序列号进行设置,并将设置后的数据流传递给子流划分模块;若应用类型为需要可靠传输的文件数据,特定应用传输处理模块对整流序列号、起始标记和结束标记进行设置并将设置后的数据流传递给子流划分模块,以及进行拥塞控制、差错控制和重传控制。对于从子流重组模块接收到的重组后的数据子流,若应用类型为需要实时传输的音视频数据,特定应用传输处理模块根据时间戳标记和整流序列号,重组为原始数据流并传递给上层应用;若应用类型为需要可靠传输的文件数据,特定应用传输处理模块根据整流序列号进行选择性确认,并根据整流序列号、起始标记和结束标记重组为原始数据流传递给上层应用,以及进行拥塞控制和差错控制。 
子流划分模块负责选择一条或者多条中继路径作为活动路径,并根据数据流划分策略, 将从特定应用传输处理模块接收到的待发送的数据流,划分成若干待发送的数据子流,且将每个待发送的数据子流绑定到一条活动路径,传递给子流封装与解封装模块。其中,数据流划分策略根据应用类型和中继路径的传输质量信息进行制定。 
子流封装与解封装模块负责数据子流的封装和解封装功能。子流封装与解封装模块将从子流划分模块接收到的待发送的数据子流,按照多径传输控制协议封装为一个或多个子流多径传输数据包,并基于传输层用户数据报协议UDP发送至该数据子流所绑定的活动路径的下一跳传输地址。其中,子流多径传输数据包包括子流多径传输数据包首部和子流多径传输数据包载荷两部分,子流多径传输数据包首部含有路径标识符和子流序列号,子流序列号的初始值由作为发送端的用户代理随机产生;子流多径传输数据包载荷指的是构成数据子流的数据块。基于传输层用户数据报协议UDP接收到子流多径传输数据包后,子流封装与解封装模块提取出数据子流的数据块以及相应的路径标识符和子流序列号,并传递给子流重组模块。 
子流重组模块负责根据相应的路径标识符和子流序列号,对接收到的数据子流的数据块进行重组,并将重组后的数据子流传递给特定应用传输处理模块。 
子流传输质量报告模块负责统计和反馈中继路径的数据传输质量。为了充分利用多条中继路径的传输能力,并做到按传送质量的负载均衡,作为发送端的用户代理需要监控每条路径的传送质量。为此,作为发送端的用户代理为每个活动路径产生子流发送者报告包,子流发送者报告包携带路径标识符、时间戳、已发送子流多径传输数据包的子流序列号最大值、已发送数据子流的字节数,沿着该活动路径传送至作为接收端的用户代理。作为接收端的用户代理根据路径标识符、子流序列号和时间戳计算每个活动路径的丢包率、抖动、往返时延,统计出每个活动路径的传输质量信息,在接收到来自于作为发送端的用户代理的子流发送者报告包之后为每个活动路径产生子流接收者报告包,子流接收者报告包携带路径标识符、丢包率、抖动和往返时延,沿着作为接收端的用户代理与作为发送端的用户代理之间的网络路径发送至作为发送端的用户代理。 
本实施方式中的中继服务控制器的功能结构如图3所示,包括中继服务转发器管理模块、中继网络管理模块和中继路径管理模块。 
中继服务转发器管理模块负责管理中继服务系统中所有的中继服务转发器。通过处理来自于中继服务转发器的中继服务注册消息、中继服务开启消息、中继服务暂停消息以及中继服务关闭消息,中继服务转发器管理模块维护着中继服务系统中所有可用的中继服务转发器。收到中继服务注册消息之后,中继服务转发器管理模块向发送该消息的中继服务转发器发送性能查询消息,用于查询中继服务转发器的性能信息,包括处理器能力、存储能力和网络带宽;中继服务转发器管理模块周期性地向每个中继服务转发器发送状态查询消息,用于查询 中继服务转发器当前的负载信息,包括:中继路径个数、处理器使用率和网络带宽使用率。 
中继网络管理模块负责管理中继网络的拓扑信息。中继网络由中继服务转发器及中继服务转发器之间的覆盖路径组成。中继网络的拓扑信息是指任意两个中继服务转发器之间是否存在覆盖路径以及该覆盖路径的传输性能。覆盖路径由多个物理链路组成。覆盖路径的传输性能包括丢包率、延时和可用带宽。中继网络管理模块向每个中继服务转发器发送连接保活消息,以获得每个中继服务转发器所关联的覆盖路径以及覆盖路径的传输性能。 
中继路径管理模块负责中继路径的分配和释放。在接收到作为发送端的用户代理发送的路径分配请求消息后,中继路径管理模块根据路径分配策略为之分配一条或多条中继路径,并为每条中继路径分配一个唯一的路径标识符。其中,路径分配策略根据作为发送端的用户代理地址、作为接收端的用户代理地址、应用类型、以及各个中继服务转发器的性能和负载信息进行制定。在分配中继路径时,中继路径管理模块向中继路径上所有的中继服务转发器发送路径添加请求消息,若至少一个中继服务转发器响应失败,该中继路径分配失败;若中继路径上所有中继服务转发器均响应成功,该中继路径分配成功。路径添加请求消息携带路径标识符和接收该消息的中继服务转发器的下一跳传输地址等信息。中继路径管理模块向作为发送端的用户代理发送分配成功的中继路径信息,包括路径标识符和作为发送端的用户代理的下一跳传输地址。在接收到作为发送端的用户代理发送的路径释放请求消息后,查找该消息所对应的中继路径,并向中继路径上所有的中继服务转发器发送路径删除请求消息,释放所分配的中继路径。 
本实施方式中的中继服务转发器的功能结构如图4所示,包括中继服务管理模块、拓扑发现和性能测量模块、路径表管理模块和子流转发模块。 
中继服务管理模块负责中继服务的注册、开启、暂停、关闭功能。中继服务转发器启动后与中继服务控制器采用TLS加密方式建立面向连接的安全通道。当连接建立之后,中继服务管理模块向中继服务控制器发起中继服务注册消息,包括中继服务转发器标识符、提供中继服务的地址和端口信息。在中继服务注册成功之后,中继服务管理模块向中继服务控制器发送中继服务开启消息,用于告知中继服务控制器已开始中继服务。当负载较重或者其它情况发生时,中继服务管理模块向中继服务控制器发送中继服务暂停消息,用于告知中继服务控制器暂停接收新的路径添加消息。在这期间,子流转发模块仍然为已存在的中继路径提供中继服务。当恢复到正常状态时,中继服务管理模块重新向中继服务控制器发送中继服务开启消息,用于告知中继服务控制器已重新开始中继服务。当希望永久停止中继服务时,中继服务管理模块在断开与中继服务控制器的连接之前向其发送中继服务关闭消息。在这种情况下,中继服务控制器可以及时地做一些补救措施,比如,为受影响的数据流指定一条或多条 新的中继路径。 
拓扑发现和性能测量模块负责中继服务转发器之间的拓扑发现和性能测量功能。拓扑发现和性能测量模块通过手工配置或者其它方式获得其它中继服务转发器信息。通过拓扑发现过程,拓扑发现和性能测量模块可以确定与其它中继服务转发器之间是否存在一条覆盖路径。拓扑发现过程可以基于下面的规则:位于同一个自治域的中继服务转发器之间存在一条覆盖路径;如果两个自治域之间存在一条域间链路,则位于这两个自治域的中继服务转发器之间存在一条覆盖路径。覆盖路径通常由多个物理链路组成;除了覆盖流量,非覆盖流量也将使用相同的物理链路;另外,中继服务转发器提供的中继服务工作在应用层。因此,中继服务转发器不能控制或者管理IP层的网络资源,只能依赖于测量机制获取所关联的覆盖路径的性能信息。通过性能测量过程,拓扑发现和性能测量模块可以获取本中继服务转发器所关联的覆盖路径的传输性能,包括丢包率、延时、可用带宽。拓扑发现和性能测量模块通过连接保活消息将所关联的覆盖路径以及覆盖路径的传输性能信息传送给中继服务控制器。 
路径表管理模块负责维护本地路由表信息。本地路径表用于存储经由本中继服务转发器的中继路径信息,该中继路径信息包括路径标识符和该中继服务转发器的下一跳传输地址。中继服务控制器通过中继服务控制协议管理中继服务转发器的本地路径表。当接收到路径添加消息,路径表管理模块检查本地路径表是否已经存在具有相同路径标识符的中继路径,如果存在,则拒绝该请求并回复一个路径添加失败响应消息;如果不存在,则将该中继路径信息添加至本地路径表中并回复一个路径添加成功响应消息。当接收到路径删除消息,路径表管理模块检查本地路径表是否存在具有指定路径标识符的中继路径,如果存在,则删除该中继路径并回复一个路径删除成功响应消息;如果不存在,则回复一个路径删除失败响应消息。当接收到路径更新请求消息,路径表管理模块检查本地路径表是否存在具有指定路径标识的中继路径,如果存在,则重置该中继路径信息并回复一个路径更新成功响应消息;如果不存在,则回复一个路径更新失败响应消息。 
子流转发模块基于传输层用户数据报协议UDP并基于本地路径表对数据子流包进行转发。数据子流包包括子流多径传输数据包、子流发送者报告包和子流保活包。子流转发模块利用传输层的用户数据报协议UDP从作为发送端的用户代理或者上一跳中继服务转发器接收数据子流包。接收到数据子流包后,子流转发模块提取出路径标识符,根据路径标识符在本地路径表中进行匹配查找。如果在本地路径表中没有找到匹配的中继路径,子流转发模块丢弃该数据子流包;如果找到匹配的中继路径,子流转发模块则基于传输层用户数据报协议UDP向下一跳传输地址转发该数据子流包。 
采用本实施方式的基于应用层中继的多径传输系统的多径传输方法,如图5和图6所示, 包括如下步骤: 
步骤1:中继服务转发器向中继服务控制器注册并开启中继服务; 
首先,本实施方式中的第一中继服务转发器、第二中继服务转发器和第三中继服务转发器分别与中继服务控制器之间采用TLS加密方式建立面向连接的安全通道。 
当连接建立之后,中继服务转发器向中继服务控制器发起中继服务注册消息,包括中继服务转发器标识符、提供中继服务的地址和端口信息。中继服务控制器回送中继服务注册响应消息,若为注册失败响应消息,中继服务转发器退出服务;若为注册成功响应消息,中继服务转发器向中继服务控制器发送中继服务开启消息,用于告知中继服务控制器已开始中继服务,中继服务控制器回送中继服务开启响应消息并指示中继服务启动结果。当负载较重或者其它情况发生时,中继服务转发器可以向中继服务控制器发送中继服务暂停消息,用于告知中继服务控制器暂停接收新的路径添加消息。在这期间,中继服务转发器仍然为已存在的中继路径提供中继服务。当恢复到正常状态时,中继服务转发器重新向中继服务控制器发送中继服务开启消息,用于告知中继服务控制器已重新开始中继服务。当希望永久停止中继服务时,中继服务转发器在断开与中继服务控制器的连接之前向其发送中继服务关闭消息。 
步骤2:中继服务控制器获取中继服务转发器的性能信息和状态信息,以及中继服务转发器之间的覆盖路径信息; 
步骤2.1:中继服务控制器向注册后的中继服务转发器发送性能查询消息,以查询该中继服务转发器的性能信息,包括:处理器能力、存储能力和网络带宽; 
步骤2.2:中继服务控制器周期性地向每个中继服务转发器发送状态查询消息,以查询中继服务转发器当前的负载信息,包括:中继路径个数、处理器使用率和网络带宽使用率; 
步骤2.3:中继服务控制器向注册后的中继服务转发器发送连接保活消息,以查询中继服务转发器所关联的覆盖路径以及覆盖路径的传输性能; 
步骤3:作为发送端的用户代理从中继服务控制器获取一条或者多条中继路径; 
作为发送端的用户代理可以通过以下两种方式从中继服务控制器获取中继路径: 
第一种方式是,作为发送端的用户代理使用中继服务控制协议直接从中继服务控制器获得备选中继路径,包括如下步骤: 
步骤3.1:作为发送端的用户代理向中继服务控制器发送路径分配请求消息,路径分配请求消息携带作为发送端的用户代理的数据传输地址信息、作为接收端的用户代理的数据传输地址信息和所需的中继路径条数; 
步骤3.2:根据接收到的路径分配请求消息和中继服务转发器的性能信息和状态信息,中继服务控制器选择一条或多条中继路径,并为每条中继路径分配一个唯一的路径标识符; 
步骤3.3:中继服务控制器向所选择的中继路径上的所有中继服务转发器发送路径添加请求消息,路径添加请求消息携带路径标识符和接收该消息的中继服务转发器的下一跳传输地址信息; 
步骤3.4:中继服务转发器根据路径添加请求消息,检查本地路径表是否存在该消息所指定的中继路径,若存在,则该中继服务转发器拒绝该路径添加请求消息并向中继服务控制器回复一个路径添加失败响应消息;若不存在,则该中继服务转发器将该消息所指定的中继路径的路径信息添加至本地路径表中,并向中继服务控制器回复一个路径添加成功响应消息; 
步骤3.5:中继服务控制器判断当前分配成功的中继路径条数是否符合路径分配请求消息要求的中继路径条数,是,则执行步骤3.6,否,则执行步骤3.2; 
若中继服务控制器所选择的一条中继路径上至少一个中继服务转发器回复了路径添加失败响应消息,则该条中继路径分配失败;若中继服务控制器所选择的一条中继路径上所有中继服务转发器均回复了路径添加成功响应消息,则该条中继路径分配成功; 
步骤3.6:中继服务控制器向作为发送端的用户代理发送路径分配响应消息,路径分配响应消息携带有所有分配成功的中继路径的路径信息,包括:路径标识符和作为发送端的用户代理的下一跳传输地址。 
第二种方式是,作为发送端的用户代理利用建立数据传输会话的带外信令从中继服务控制器获取中继路径,带外信令服务器需要加以扩展以支持中继服务控制协议所提供的接口,在接收到来自于作为发送端的用户代理的建立数据传输会话的信令请求时,带外信令服务器代替用户代理向中继服务控制器请求分配中继路径,并将所分配的中继路径信息插入到相应的信令消息发送给作为发送端的用户代理;本实施方式采用了该第二种方式,包括如下步骤: 
步骤S3.1:在数据传输之前,作为发送端的用户代理向带外信令服务器发送通信开始请求; 
步骤S3.2:带外信令服务器从接收到的通信开始请求中提取出应用类型,确定所需的中继路径条数,并向中继服务控制器发送路径分配请求消息,路径分配请求消息携带作为发送端的用户代理的数据传输地址信息、作为接收端的用户代理的数据传输地址信息和所需的中继路径条数; 
步骤S3.3:根据接收到的路径分配请求消息和中继服务转发器的性能信息和状态信息,中继服务控制器选择一条或多条中继路径,并为每条中继路径分配一个唯一的路径标识符;中继服务控制器向所选择的中继路径上的所有中继服务转发器发送路径添加请求消息,路径添加请求消息携带路径标识符和接收该消息的中继服务转发器的下一跳传输地址信息; 
如图6所示,本实施方式的用户代理A是作为发送端的用户代理;用户代理B是作为接 收端的用户代理;中继服务控制器为用户代理A和用户代理B之间的数据流分配了两条中继路径:第一条中继路径经由第一中继服务转发器,第二条中继路径依次经由第二中继服务转发器和第三中继服务转发器。中继服务控制器向该三个选定的中继服务转发器发送路径添加请求消息,发送给第一中继服务转发器的路径添加请求消息中,下一跳传输地址为用户代理B的地址;发送给第二中继服务转发器的路径添加请求消息中,下一跳传输地址为第三中继服务转发器的地址;发送给第三中继服务转发器的路径添加请求消息中,下一跳传输地址为用户代理B的地址。 
步骤S3.4:中继服务转发器根据路径添加请求消息,检查本地路径表是否存在该消息所指定的中继路径,若存在,则该中继服务转发器拒绝该路径添加请求消息并向中继服务控制器回复一个路径添加失败响应消息;若不存在,则该中继服务转发器将该消息所指定的中继路径的路径信息添加至本地路径表中,并向中继服务控制器回复一个路径添加成功响应消息; 
若中继服务控制器所选择的一条中继路径上至少一个中继服务转发器回复了路径添加失败响应消息,则该条中继路径分配失败;若中继服务控制器所选择的一条中继路径上所有中继服务转发器均回复了路径添加成功响应消息,则该条中继路径分配成功。中继服务控制器判断当前分配成功的中继路径条数是否符合路径分配请求消息要求的中继路径条数,是,则执行步骤S3.5,否,则执行步骤S3.3; 
步骤S3.5:中继服务控制器向带外信令服务器发送路径分配响应消息,路径分配响应消息携带有所有分配成功的中继路径的路径信息,包括:路径标识符和作为发送端的用户代理的下一跳传输地址; 
如图6所示,本实施方式的中继服务控制器发送给带外信令服务器的路径分配响应消息携带了两条中继路径的路径信息,其中,第一条中继路径中的作为发送端的用户代理的下一跳传输地址为第一中继服务转发器的地址;第二条中继路径中的作为发送端的用户代理的下一跳传输地址为第二中继服务转发器的地址。 
步骤S3.6:带外信令服务器将所分配的中继路径的路径信息插入到通信开始响应消息发送给作为发送端的用户代理。 
步骤4:作为发送端的用户代理按照数据流划分策略,对从上层应用获得的原始数据流进行划分成数据子流,并沿着所获取的中继路径进行数据传输; 
步骤4.1根据数据传输需求和路径分配响应消息,作为发送端的用户代理选择一条或者多条中继路径作为活动路径; 
如图6所示,本实施方式的用户代理A选择了两条中继路径作为活动路径。 
步骤4.2:作为发送端的用户代理根据应用类型对待发送数据进行特定的传输处理; 
若应用类型为需要实时传输的音视频数据,作为发送端的用户代理设置时间戳标记、编解码类型和整流序列号;若应用类型为需要可靠传输的文件数据,作为发送端的用户代理设置整流序列号、起始标记和结束标记,并进行拥塞控制、差错控制和重传控制; 
步骤4.3:作为发送端的用户代理根据应用类型和中继路径的传输质量信息制定数据流划分策略,并根据数据流划分策略将待发送的数据流划分成若干待发送的数据子流,且分别将每个待发送的数据子流绑定到一条活动路径; 
如图6所示,本实施方式的用户代理A将待发送的数据流划分成了两个数据子流。 
步骤4.4:作为发送端的用户代理将数据子流按照多径传输控制协议封装为一个或多个子流多径传输数据包,并基于传输层用户数据报协议UDP将该一个或多个子流多径传输数据包发送至所述数据子流所绑定的活动路径的下一跳传输地址,其中子流多径传输数据包包括子流多径传输数据包首部和子流多径传输数据包载荷两部分,子流多径传输数据包首部含有路径标识符和子流序列号,子流序列号的初始值由作为发送端的用户代理随机产生; 
如图6所示,本实施方式的用户代理A将两个数据子流分别绑定到两条中继路径上,分别基于传输层用户数据报协议UDP发送至第一中继服务转发器和第二中继服务转发器。 
步骤4.5:作为发送端的用户代理周期性地为每个活动路径产生子流发送者报告包,并基于传输层用户数据报协议UDP将该子流发送者报告包发送至该活动路径的下一跳传输地址,其中,子流发送者报告包携带路径标识符、时间戳、已发送子流多径传输数据包的子流序列号最大值、已发送数据子流的字节数; 
如图6所示,本实施方式的用户代理A为两条中继路径周期性地产生子流发送者报告包,并基于传输层用户数据报协议UDP发送至第一中继服务转发器和第二中继服务转发器。其中,子流发送者报告包的发送间隔可以根据应用类型制定,默认值为1秒。除了路径标识符、时间戳、已发送子流多径传输数据包的子流序列号最大值、已发送数据子流的字节数,子流发送者报告包可以根据应用类型携带其它信息。 
步骤4.6:作为发送端的用户代理周期性地为在预设时间阈值内没有进行数据传输的中继路径产生子流保活包,并基于传输层用户数据报协议UDP将该子流保活包发送至该中继路径的下一跳传输地址; 
步骤5:中继服务转发器根据本地路径表,且基于传输层用户数据报协议UDP,向作为接收端的用户代理或者下一跳中继服务转发器转发数据; 
包括如下子步骤: 
步骤5.1:中继服务转发器基于传输层用户数据报协议UDP从作为发送端的用户代理或者上一跳中继服务转发器接收数据子流包,数据子流包包括子流多径传输数据包、子流发送 者报告包和子流保活包; 
步骤5.2:从接收到的数据子流包中提取路径标识符,根据路径标识符在本地路径表中进行匹配查找,若匹配失败,则丢弃该数据子流包;若匹配成功,则基于传输层用户数据报协议UDP向作为接收端的用户代理或者下一跳中继服务转发器转发所接收到的数据子流包; 
如图6所示,本实施方式的第一中继服务转发器将接收到的来自于用户代理A的数据子流包转发给用户代理B;第二中继服务转发器将接收到的来自于用户代理A的数据子流包转发给第三中继服务转发器;第三中继服务转发器将接收到的来自于第二中继服务转发器的数据子流包转发给用户代理B。 
步骤6:作为接收端的用户代理将接收到的数据重组为原始数据流并传递给上层应用,并向作为发送端的用户代理发送中继路径的传输质量信息; 
包括以下子步骤: 
步骤6.1:作为接收端的用户代理基于传输层用户数据报协议UDP接收子流多径传输数据包,并提取出子流数据块以及相应的路径标识符和子流序列号信息; 
步骤6.2:作为接收端的用户代理按照路径标识符和子流序列号对数据子流进行重组; 
步骤6.3:作为接收端的用户代理根据应用类型对重组后的数据子流进行特定的传输处理,重组出原始数据流并传递给上层应用; 
若应用类型为需要实时传输的音视频数据,作为接收端的用户代理处理时间戳标记、编解码类型和整流序列号,并根据时间戳标记和整流序列号,重组出原始数据流传递给上层应用;若应用类型为需要可靠传输的文件数据,作为接收端的用户代理根据整流序列号进行选择性确认,并根据整流序列号、起始标记和结束标记重组出原始数据流传递给上层应用,以及进行拥塞控制和差错控制; 
步骤6.4:作为接收端的用户代理统计每个活动路径的传输质量信息,并在接收到子流发送者报告包后为每个活动路径产生子流接收者报告包,并基于传输层用户数据报协议UDP将该子流接收者报告包发送至作为发送端的用户代理,其中子流接收者报告包携带路径标识符、丢包率、抖动和往返时延。 
如图6所示,本实施方式的用户代理B统计两条活动路径的传输质量信息,并接收到子流发送者报告包后产生子流接收者报告包,并基于传输层用户数据报协议UDP发送至用户代理A。除了路径标识符、丢包率、抖动和往返时延,子流接收者报告包可以根据应用类型携带其它信息。 
步骤7:作为发送端的用户代理根据接收到的中继路径的传输质量信息,调整数据流划分策略; 
如图6所示,本实施方式的用户代理A根据接收到的来自于用户代理B的子流接收者报告包,获得中继路径的传输质量信息,根据应用类型和中继路径的传输质量信息调整数据流划分策略。比如,在数据传输起始阶段,用户代理A设定两条中继路径的传输质量是相同的,将待发送数据流均等划分为两个数据子流,在后续的数据传输过程中,用户代理A根据获得的中继路径的传输质量信息重新调整数据流划分策略,让传输质量较好的中继路径传输更多的数据。 
步骤8:重复执行步骤4至步骤7,直至待发送的数据流全部传输完毕; 
步骤9:释放中继路径。 
包括以下两种方式: 
第一种方式:作为发送端的用户代理直接请求中继服务控制器释放中继路径,包括以下步骤: 
步骤9.1:作为发送端的用户代理向中继服务控制器发送路径释放请求消息,其中,路径释放请求消息携带一个或多个路径标识符; 
步骤9.2:根据接收的路径释放请求消息,中继服务控制器查找与路径标识符相对应的中继路径,并向中继路径上所有的中继服务转发器发送路径删除请求消息,其中,路径删除请求消息携带路径标识符; 
步骤9.3:根据接收的路径删除请求消息,中继服务转发器从本地路径表中删除该消息所指定的中继路径,并向中继服务控制器回复一个路径删除成功响应消息; 
步骤9.4:中继服务控制器向作为发送端的用户代理发送路径释放响应消息,中继路径释放完毕。 
第二种方式:作为发送端的用户代理利用结束数据传输会话的带外信令请求中继服务控制器释放中继路径,带外信令服务器在接收到来自于作为发送端的用户代理的结束数据传输会话的信令请求时,代替作为发送端的用户代理请求中继服务控制器释放中继路径。本实施方式采用了这种方式,如图6所示,具体过程如下: 
步骤S9.1:在数据传输结束之后,作为发送端的用户代理向带外信令服务器发送通信结束请求; 
步骤S9.2:带外信令服务器从接收到的通信结束请求中提取出会话标识符,根据会话标识符查询获得相应的中继路径的路径标识符,并向中继服务控制器发送路径释放请求消息,路径释放请求消息携带路径标识符; 
如图6所示,本实施方式的带外信令服务器向中继服务控制器发送的路径释放请求消息携带了两条中继路径的路径标识符。 
步骤S9.3:根据接收的路径释放请求消息,中继服务控制器查找与路径标识符相对应的中继路径,并向中继路径上所有的中继服务转发器发送路径删除请求消息,其中,路径删除请求消息携带路径标识符; 
如图6所示,本实施方式的中继服务控制器分别向第一中继服务转发器、第二中继服务转发器和第三中继服务转发器发送路径删除请求消息,路径删除请求消息携带了相应的路径标识符。 
步骤S9.4:根据接收的路径删除请求消息,中继服务转发器从本地路径表中删除该消息所指定的中继路径,并向中继服务控制器回复一个路径删除成功响应消息; 
步骤S9.5:中继服务控制器向带外信令服务器发送路径释放响应消息,中继路径释放完毕。 
虽然以上描述了本发明的具体实施方式,但是本领域内的熟练的技术人员应当理解,这些仅是举例说明,可以对这些实施方式做出多种变更或修改,而不背离本发明的原理和实质。本发明的范围仅由所附权利要求书限定。 

Claims (10)

1.一种基于应用层中继的多径传输系统,其特征在于:包括:用户代理和中继服务系统;
所述用户代理为位于终端设备的逻辑实体,处在网络协议栈的应用层,用于基于传输层用户数据报协议UDP,为上层应用提供多径数据传输;所述用户代理划分为作为发送端的用户代理和作为接收端的用户代理;
所述中继服务系统置于作为发送端的用户代理和作为接收端的用户代理之间,包括一个或多个中继服务控制器,以及一个或多个中继服务转发器;所述中继服务系统用于为用户代理之间的数据传输提供中继路径;所述中继路径为用户代理之间经由一个或多个中继服务转发器的路径;
所述作为发送端的用户代理:用于根据从中继服务控制器获得的一条或多条中继路径的路径信息,将从上层应用接收的原始数据流封装为子流多径传输数据包,并沿着一条或多条中继路径发送至作为接收端的用户代理;
所述作为接收端的用户代理用于将接收到的子流多径传输数据包重组为原始数据流,并传递至上层应用;
所述中继服务控制器用于管理所述中继服务转发器和所述中继路径;
所述中继服务转发器用于基于传输层用户数据报协议UDP转发用户代理之间所传输的数据。
2.根据权利要求1所述的基于应用层中继的多径传输系统,其特征在于:所述用户代理:包括:路径管理模块、特定应用传输处理模块、子流划分模块、子流封装与解封装模块、子流重组模块和子流传输质量报告模块;
所述路径管理模块:(a)用于在数据传输之前或数据传输过程中,向中继服务控制器发送路径分配请求消息,并从中继服务控制器收集中继路径信息;所述中继路径信息包括路径标识符和作为发送端的用户代理的下一跳传输地址;(b)为了防止中继服务转发器对在预设时间阈值内没有进行数据传输的中继路径进行回收,路径管理模块周期性地为中继路径发送子流保活包对中继路径进行维护;(c)当用户代理之间的数据传输结束后,向中继服务控制器发送路径释放请求消息;
所述特定应用传输处理模块用于根据应用类型完成特定的传输处理:(a)对于从上层应用接收到的待发送的原始数据流,若应用类型为需要实时传输的音视频数据,则对时间戳标记、编解码类型和整流序列号进行设置,并将设置后的数据流传递给子流划分模块;若应用类型为需要可靠传输的文件数据,则对整流序列号、起始标记和结束标记进行设置并将设置后的数据流传递给子流划分模块,以及进行拥塞控制、差错控制和重传控制;(b)对于从子流重组模块接收到的重组后的数据子流,若应用类型为需要实时传输的音视频数据,则根据时间戳标记和整流序列号,重组为原始数据流并传递给上层应用;若应用类型为需要可靠传输的文件数据,则根据整流序列号进行选择性确认,并根据整流序列号、起始标记和结束标记重组为原始数据流传递给上层应用,以及进行拥塞控制和差错控制;
所述子流划分模块用于选择一条或者多条中继路径作为活动路径,并根据数据流划分策略,将从特定应用传输处理模块接收到的待发送的数据流,划分成若干待发送的数据子流,且将每个待发送的数据子流绑定到一条活动路径,传递给子流封装与解封装模块;所述数据流划分策略根据应用类型和中继路径的传输质量信息进行制定;
所述子流封装与解封装模块:(a)用于将从子流划分模块接收到的待发送的数据子流按照多径传输控制协议封装为一个或多个子流多径传输数据包,并基于传输层用户数据报协议UDP发送至该数据子流所绑定的活动路径的下一跳传输地址;所述子流多径传输数据包,包括子流多径传输数据包首部和子流多径传输数据包载荷;所述子流多径传输数据包首部含有路径标识符和子流序列号;所述子流多径传输数据包载荷指的是构成数据子流的数据块;
(b)用于基于传输层用户数据报协议UDP接收到子流多径传输数据包后,提取出数据子流的数据块以及相应的路径标识符和子流序列号,并传递给子流重组模块;
所述子流重组模块用于根据相应的路径标识符和子流序列号,对接收到的数据子流的数据块进行重组,并将重组后的数据子流传递给特定应用传输处理模块;
所述子流传输质量报告模块用于统计和反馈中继路径的数据传输质量:(a)作为发送端的用户代理为每个活动路径产生子流发送者报告包,所述子流发送者报告包携带路径标识符、时间戳、已发送子流多径传输数据包的子流序列号最大值、已发送数据子流的字节数,沿着该活动路径传送至作为接收端的用户代理;(b)作为接收端的用户代理统计每个活动路径的传输质量信息,并为每个活动路径产生子流接收者报告包;所述子流接收者报告包携带路径标识符、丢包率、抖动和往返时延,发送至作为发送端的用户代理。
3.根据权利要求1所述的基于应用层中继的多径传输系统,其特征在于:所述中继服务控制器,包括:中继服务转发器管理模块、中继网络管理模块和中继路径管理模块;
所述中继服务转发器管理模块:(a)处理来自于中继服务转发器的中继服务注册消息、中继服务开启消息、中继服务暂停消息以及中继服务关闭消息;(b)收到中继服务注册消息之后,向发送该消息的中继服务转发器发送性能查询消息,以查询该中继服务转发器的性能信息,包括:处理器能力、存储能力和网络带宽;(c)周期性地向每个中继服务转发器发送状态查询消息,以查询中继服务转发器当前的负载信息,包括:中继路径个数、处理器使用率和网络带宽使用率;
所述中继网络管理模块:(a)向每个中继服务转发器发送连接保活消息,以获得每个中继服务转发器所关联的覆盖路径以及覆盖路径的传输性能;(b)管理中继网络的拓扑信息;所述覆盖路径由多个物理链路组成;所述覆盖路径的传输性能包括丢包率、延时和可用带宽;所述中继网络由中继服务转发器及中继服务转发器之间的覆盖路径组成;所述拓扑信息是指任意两个中继服务转发器之间是否存在覆盖路径以及该覆盖路径的传输性能;
所述中继路径管理模块:(a)在接收到作为发送端的用户代理发送的路径分配请求消息后,为用户代理之间的数据传输分配一条或多条中继路径,并为每条中继路径分配一个唯一的路径标识符,并向中继路径所经由的所有中继服务转发器和作为发送端的用户代理发送中继路径信息,所述发送给中继服务转发器的中继路径信息,包括路径标识符和该中继服务转发器的下一跳传输地址;所述发送给作为发送端的用户代理的中继路径信息,包括路径标识符和作为发送端的用户代理的下一跳传输地址;(b)在接收到作为发送端的用户代理发送的路径释放请求消息后,查找该消息所对应的中继路径,并向中继路径上所有的中继服务转发器发送路径删除请求消息,释放所分配的中继路径。
4.根据权利要求1所述的基于应用层中继的多径传输系统,其特征在于:所述中继服务转发器包括中继服务管理模块、拓扑发现和性能测量模块、路径表管理模块和子流转发模块;
所述中继服务管理模块:(a)中继服务转发器启动后,向中继服务控制器发起中继服务注册消息进行中继服务注册,所述中继服务注册消息包括中继服务转发器标识符、提供中继服务的地址和端口信息;(b)在中继服务注册成功之后,向中继服务控制器发送中继服务开启消息,以告知中继服务控制器已开始中继服务;(c)向中继服务控制器发送中继服务暂停消息,以告知中继服务控制器暂停接收新的路径添加消息;(d)在断开与中继服务控制器的连接之前向中继服务控制器发送中继服务关闭消息;
所述拓扑发现和性能测量模块;(a)通过拓扑发现过程,确定本中继服务转发器与其它中继服务转发器之间的覆盖路径;(b)通过性能测量过程,获取本中继服务转发器所关联的覆盖路径的传输性能;(c)将本中继服务转发器所关联的覆盖路径以及覆盖路径的传输性能信息传送给中继服务控制器;
所述路径表管理模块用于根据来自于中继服务控制器的路径添加请求消息和路径删除请求消息,对本地路径表进行中继路径的添加和中继路径的删除操作;所述本地路径表用于存储经由本中继服务转发器的中继路径信息,该中继路径信息包括路径标识符和该中继服务转发器的下一跳传输地址;
所述子流转发模块用于基于传输层用户数据报协议UDP并基于本地路径表对数据子流包进行转发;所述数据子流包,包括:子流多径传输数据包、子流发送者报告包和子流保活包。
5.采用权利要求1所述的基于应用层中继的多径传输系统的多径传输方法,其特征在于:包括以下步骤:
步骤1:中继服务转发器向中继服务控制器注册并开启中继服务;
步骤1.1:中继服务转发器启动后,向中继服务控制器发起中继服务注册消息进行中继服务注册;
步骤1.2:在中继服务注册成功之后,中继服务转发器向中继服务控制器发送中继服务开启消息,以告知中继服务控制器已开始中继服务;
步骤2:中继服务控制器获取中继服务转发器的性能信息和状态信息,以及中继服务转发器之间的覆盖路径信息;
步骤2.1:中继服务控制器向注册后的中继服务转发器发送性能查询消息,以查询该中继服务转发器的性能信息,包括:处理器能力、存储能力和网络带宽;
步骤2.2:中继服务控制器周期性地向每个中继服务转发器发送状态查询消息,以查询中继服务转发器当前的负载信息,包括:中继路径个数、处理器使用率和网络带宽使用率;
步骤2.3:中继服务控制器向注册后的中继服务转发器发送连接保活消息,以查询中继服务转发器所关联的覆盖路径以及覆盖路径的传输性能;
步骤3:作为发送端的用户代理从中继服务控制器获取一条或者多条中继路径;
步骤4:作为发送端的用户代理按照数据流划分策略,对从上层应用获得的原始数据流进行划分成数据子流,并沿着所获取的中继路径进行数据传输;
步骤5:中继服务转发器根据本地路径表,且基于传输层用户数据报协议UDP,向作为接收端的用户代理或者下一跳中继服务转发器转发数据;
步骤6:作为接收端的用户代理将接收到的数据重组为原始数据流并传递给上层应用,并向作为发送端的用户代理发送中继路径的传输质量信息;
步骤7:作为发送端的用户代理根据接收到的中继路径的传输质量信息,调整数据流划分策略;
步骤8:重复执行步骤4至步骤7,直至待发送的数据流全部传输完毕;
步骤9:释放中继路径。
6.根据权利要求5所述的基于应用层中继的多径传输方法,其特征在于:步骤3作为发送端的用户代理从中继服务控制器获取中继路径,包括以下两种方式:
第一种方式:作为发送端的用户代理直接从中继服务控制器获取中继路径,包括以下步骤:
步骤3.1:作为发送端的用户代理向中继服务控制器发送路径分配请求消息;
路径分配请求消息携带作为发送端的用户代理的数据传输地址信息、作为接收端的用户代理的数据传输地址信息和所需的中继路径条数;
步骤3.2:根据接收到的路径分配请求消息和中继服务转发器的性能信息和状态信息,中继服务控制器选择一条或多条中继路径,并为每条中继路径分配一个唯一的路径标识符;
步骤3.3:中继服务控制器向所选择的中继路径上的所有中继服务转发器发送路径添加请求消息;
路径添加请求消息携带路径标识符和接收该消息的中继服务转发器的下一跳传输地址信息;
步骤3.4:中继服务转发器根据路径添加请求消息,检查本地路径表是否存在该消息所指定的中继路径,若存在,则该中继服务转发器拒绝该路径添加请求消息并向中继服务控制器回复一个路径添加失败响应消息;若不存在,则该中继服务转发器将该消息所指定的中继路径的路径信息添加至本地路径表中,并向中继服务控制器回复一个路径添加成功响应消息;
步骤3.5:中继服务控制器判断当前分配成功的中继路径条数是否符合路径分配请求消息要求的中继路径条数,是,则执行步骤3.6,否,则执行步骤3.2;
若中继服务控制器所选择的一条中继路径上至少一个中继服务转发器回复了路径添加失败响应消息,则该条中继路径分配失败;若中继服务控制器所选择的一条中继路径上所有中继服务转发器均回复了路径添加成功响应消息,则该条中继路径分配成功;
步骤3.6:中继服务控制器向作为发送端的用户代理发送路径分配响应消息;
所述路径分配响应消息携带有所有分配成功的中继路径的路径信息,包括:路径标识符和作为发送端的用户代理的下一跳传输地址;
第二种方式:作为发送端的用户代理利用建立数据传输会话的带外信令从中继服务控制器获取中继路径,其方法如下:
带外信令服务器在接收到来自于作为发送端的用户代理的建立数据传输会话的信令请求时,代替作为发送端的用户代理从中继服务控制器获取中继路径,并将获得的中继路径信息插入到相应的信令消息传送给作为发送端的用户代理。
7.根据权利要求5所述的基于应用层中继的多径传输方法,其特征在于:步骤4包括以下步骤:
步骤4.1根据数据传输需求和路径分配响应消息,作为发送端的用户代理选择一条或者多条中继路径作为活动路径;
步骤4.2:作为发送端的用户代理根据应用类型对待发送数据进行特定的传输处理;
若应用类型为需要实时传输的音视频数据,作为发送端的用户代理设置时间戳标记、编解码类型和整流序列号;若应用类型为需要可靠传输的文件数据,作为发送端的用户代理设置整流序列号、起始标记和结束标记,并进行拥塞控制、差错控制和重传控制;
步骤4.3:作为发送端的用户代理根据数据流划分策略,将待发送的数据流划分成若干待发送的数据子流,且分别将每个待发送的数据子流绑定到一条活动路径;
步骤4.4:作为发送端的用户代理将数据子流按照多径传输控制协议封装为一个或多个子流多径传输数据包,并基于传输层用户数据报协议UDP将该一个或多个子流多径传输数据包发送至所述数据子流所绑定的活动路径的下一跳传输地址;
步骤4.5:作为发送端的用户代理周期性地为每个活动路径产生子流发送者报告包,并基于传输层用户数据报协议UDP将该子流发送者报告包发送至该活动路径的下一跳传输地址;
所述子流发送者报告包携带路径标识符、时间戳、已发送子流多径传输数据包的子流序列号最大值、已发送数据子流的字节数;
步骤4.6:作为发送端的用户代理周期性地为在预设时间阈值内没有进行数据传输的中继路径产生子流保活包,并基于传输层用户数据报协议UDP将该子流保活包发送至该中继路径的下一跳传输地址。
8.根据权利要求5所述的基于应用层中继的多径传输方法,其特征在于:步骤5包括以下步骤:
步骤5.1:中继服务转发器基于传输层用户数据报协议UDP从作为发送端的用户代理或者上一跳中继服务转发器接收数据子流包;
步骤5.2:从接收到的数据子流包中提取路径标识符,根据路径标识符在本地路径表中进行匹配查找,若匹配失败,则丢弃该数据子流包;若匹配成功,则基于传输层用户数据报协议UDP向作为接收端的用户代理或者下一跳中继服务转发器转发所接收到的数据子流包。
9.根据权利要求5所述的基于应用层中继的多径传输方法,其特征在于:步骤6包括以下步骤:
步骤6.1:作为接收端的用户代理基于传输层用户数据报协议UDP接收子流多径传输数据包,并提取出子流数据块以及相应的路径标识符和子流序列号信息;
步骤6.2:作为接收端的用户代理按照路径标识符和子流序列号对数据子流进行重组;
步骤6.3:作为接收端的用户代理根据应用类型对重组后的数据子流进行特定的传输处理,重组出原始数据流并传递给上层应用;
若应用类型为需要实时传输的音视频数据,作为接收端的用户代理处理时间戳标记、编解码类型和整流序列号,并根据时间戳标记和整流序列号,重组出原始数据流传递给上层应用;若应用类型为需要可靠传输的文件数据,作为接收端的用户代理根据整流序列号进行选择性确认,并根据整流序列号、起始标记和结束标记重组出原始数据流传递给上层应用,以及进行拥塞控制和差错控制;
步骤6.4:作为接收端的用户代理统计每个活动路径的传输质量信息,并在接收到子流发送者报告包后为每个活动路径产生子流接收者报告包,并基于传输层用户数据报协议UDP将该子流接收者报告包发送至作为发送端的用户代理;
所述子流接收者报告包携带路径标识符、丢包率、抖动和往返时延。
10.根据权利要求5所述的基于应用层中继的多径传输方法,其特征在于:步骤9释放中继路径,包括以下两种方式:
第一种方式:作为发送端的用户代理直接请求中继服务控制器释放中继路径,包括以下步骤:
步骤9.1:作为发送端的用户代理向中继服务控制器发送路径释放请求消息;
路径释放请求消息携带一个或多个路径标识符;
步骤9.2:根据接收的路径释放请求消息,中继服务控制器查找与路径标识符相对应的中继路径,并向中继路径上所有的中继服务转发器发送路径删除请求消息;
路径删除请求消息携带路径标识符;
步骤9.3:根据接收的路径删除请求消息,中继服务转发器从本地路径表中删除该消息所指定的中继路径,并向中继服务控制器回复一个路径删除成功响应消息;
步骤9.4:中继服务控制器向作为发送端的用户代理发送路径释放响应消息,中继路径释放完毕;
第二种方式:作为发送端的用户代理利用结束数据传输会话的带外信令请求中继服务控制器释放中继路径,其方法如下:
带外信令服务器在接收到来自于作为发送端的用户代理的结束数据传输会话的信令请求时,代替作为发送端的用户代理请求中继服务控制器释放中继路径。
CN201410196986.4A 2014-05-09 2014-05-09 一种基于应用层中继的多径传输系统及方法 Active CN104023006B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410196986.4A CN104023006B (zh) 2014-05-09 2014-05-09 一种基于应用层中继的多径传输系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410196986.4A CN104023006B (zh) 2014-05-09 2014-05-09 一种基于应用层中继的多径传输系统及方法

Publications (2)

Publication Number Publication Date
CN104023006A true CN104023006A (zh) 2014-09-03
CN104023006B CN104023006B (zh) 2017-02-15

Family

ID=51439576

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410196986.4A Active CN104023006B (zh) 2014-05-09 2014-05-09 一种基于应用层中继的多径传输系统及方法

Country Status (1)

Country Link
CN (1) CN104023006B (zh)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104270312A (zh) * 2014-09-25 2015-01-07 东北大学 支持流量优化和应用感知的中继路径分配系统及方法
CN105071897A (zh) * 2015-07-03 2015-11-18 东北大学 一种网络实时音频会话媒体数据多径冗余传输方法
CN105656774A (zh) * 2016-01-12 2016-06-08 东北大学 一种网络实时视频会话媒体数据多径混合冗余传输方法
CN106059724A (zh) * 2016-05-25 2016-10-26 杭州宏杉科技有限公司 一种报文传输方法和装置
CN106506438A (zh) * 2015-09-08 2017-03-15 华为技术有限公司 一种获取服务质量信息的方法及装置
CN106797281A (zh) * 2014-12-24 2017-05-31 柏思科技有限公司 用于通过聚合连接传输数据的方法和系统
CN107786440A (zh) * 2016-08-26 2018-03-09 华为技术有限公司 一种数据报文转发的方法及装置
WO2018219100A1 (zh) * 2017-06-01 2018-12-06 华为技术有限公司 数据传输的方法和设备
CN109104479A (zh) * 2018-08-01 2018-12-28 福州大学 一种基于多路并行传输技术的采集数据流传送方法与系统
CN109644190A (zh) * 2016-06-24 2019-04-16 奥兰治 两个终端之间的多路径udp通信方法
CN113825205A (zh) * 2020-06-19 2021-12-21 华硕电脑股份有限公司 无线通信系统中执行链路标识符更新程序的方法和设备
CN114785730A (zh) * 2022-04-13 2022-07-22 东北大学 一种应用层多径中继传输云服务系统的多路径生成方法
WO2023197576A1 (zh) * 2022-04-15 2023-10-19 中国电信股份有限公司 中继传输方法、切换方法、装置和用户设备

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111343093B (zh) * 2020-02-28 2021-07-09 腾讯科技(深圳)有限公司 业务数据的传输方法及装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020114332A1 (en) * 2001-02-16 2002-08-22 Apostolopoulos John G. Method and system for packet communication employing path diversity
EP1729461A1 (en) * 2005-06-02 2006-12-06 Broadcom Corporation Dynamic port failover
CN101969396A (zh) * 2010-09-02 2011-02-09 北京邮电大学 一种基于时延和带宽资源的中继选择方法
CN102307163A (zh) * 2011-07-06 2012-01-04 浙江大学 多中继协同通信系统中基于循环正交序列的信道估计方法
CN103166959A (zh) * 2013-02-28 2013-06-19 东北大学 一种多径实时传输控制系统及方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020114332A1 (en) * 2001-02-16 2002-08-22 Apostolopoulos John G. Method and system for packet communication employing path diversity
EP1729461A1 (en) * 2005-06-02 2006-12-06 Broadcom Corporation Dynamic port failover
CN101969396A (zh) * 2010-09-02 2011-02-09 北京邮电大学 一种基于时延和带宽资源的中继选择方法
CN102307163A (zh) * 2011-07-06 2012-01-04 浙江大学 多中继协同通信系统中基于循环正交序列的信道估计方法
CN103166959A (zh) * 2013-02-28 2013-06-19 东北大学 一种多径实时传输控制系统及方法

Cited By (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104270312B (zh) * 2014-09-25 2017-06-20 东北大学 支持流量优化和应用感知的中继路径分配系统及方法
CN104270312A (zh) * 2014-09-25 2015-01-07 东北大学 支持流量优化和应用感知的中继路径分配系统及方法
CN106797281A (zh) * 2014-12-24 2017-05-31 柏思科技有限公司 用于通过聚合连接传输数据的方法和系统
CN105071897A (zh) * 2015-07-03 2015-11-18 东北大学 一种网络实时音频会话媒体数据多径冗余传输方法
CN105071897B (zh) * 2015-07-03 2018-05-29 东北大学 一种网络实时音频会话媒体数据多径冗余传输方法
CN106506438A (zh) * 2015-09-08 2017-03-15 华为技术有限公司 一种获取服务质量信息的方法及装置
CN105656774A (zh) * 2016-01-12 2016-06-08 东北大学 一种网络实时视频会话媒体数据多径混合冗余传输方法
CN105656774B (zh) * 2016-01-12 2018-10-23 东北大学 一种网络实时视频会话媒体数据多径混合冗余传输方法
CN106059724B (zh) * 2016-05-25 2019-04-05 杭州宏杉科技股份有限公司 一种报文传输方法和装置
CN106059724A (zh) * 2016-05-25 2016-10-26 杭州宏杉科技有限公司 一种报文传输方法和装置
CN109644190B (zh) * 2016-06-24 2022-01-11 奥兰治 两个终端之间的多路径udp通信方法
CN109644190A (zh) * 2016-06-24 2019-04-16 奥兰治 两个终端之间的多路径udp通信方法
US11184284B2 (en) 2016-08-26 2021-11-23 Huawei Technologies Co., Ltd. Data packet forwarding method and apparatus
CN107786440A (zh) * 2016-08-26 2018-03-09 华为技术有限公司 一种数据报文转发的方法及装置
US11140082B2 (en) 2017-06-01 2021-10-05 Huawei Technologies Co., Ltd. Data transmission method and device
WO2018219100A1 (zh) * 2017-06-01 2018-12-06 华为技术有限公司 数据传输的方法和设备
CN109104479A (zh) * 2018-08-01 2018-12-28 福州大学 一种基于多路并行传输技术的采集数据流传送方法与系统
CN113825205A (zh) * 2020-06-19 2021-12-21 华硕电脑股份有限公司 无线通信系统中执行链路标识符更新程序的方法和设备
CN113825205B (zh) * 2020-06-19 2024-04-12 华硕电脑股份有限公司 无线通信系统中执行链路标识符更新程序的方法和设备
CN114785730A (zh) * 2022-04-13 2022-07-22 东北大学 一种应用层多径中继传输云服务系统的多路径生成方法
CN114785730B (zh) * 2022-04-13 2023-12-01 东北大学 一种应用层多径中继传输云服务系统的多路径生成方法
WO2023197576A1 (zh) * 2022-04-15 2023-10-19 中国电信股份有限公司 中继传输方法、切换方法、装置和用户设备
CN116963262A (zh) * 2022-04-15 2023-10-27 中国电信股份有限公司 中继传输方法、切换方法、装置和用户设备

Also Published As

Publication number Publication date
CN104023006B (zh) 2017-02-15

Similar Documents

Publication Publication Date Title
CN104023006A (zh) 一种基于应用层中继的多径传输系统及方法
US10181977B2 (en) Cross-stratum optimization protocol
CN103166959B (zh) 一种多径实时传输控制系统及方法
US8208430B2 (en) Transparent interaction with multi-layer protocols via selective bridging and proxying
US10548024B2 (en) Cloud communication center system and method for processing data in a cloud communication system
JP6473688B2 (ja) データ転送レートを増加させるためのデータストリーム分割
US8498233B2 (en) Method and apparatus for multicast tree management in multi-hop relay communication system
CN101621747B (zh) 一种无线mesh网络的可靠组播传输方法
CN100417141C (zh) 一种组播业务实现方法
CN102084638A (zh) 计算机网络中接入服务器的确定性会话负载平衡和冗余
JP6777650B2 (ja) Tcpトンネル及びネイティブtcp情報に基づくバンドリングシナリオにおけるパケットのスケジューリングのための方法及びシステム
CN111435922B (zh) 一种带宽共享方法
CN112218315A (zh) 一种5G专网的端到端QoS策略执行及以太网数据转发方法
CN108234309A (zh) 一种网络数据的传输方法
WO2009082905A1 (fr) Procédé système et dispositif commutateur permettant l'établissement dynamique de réseau local virtuel de multidiffusion
WO2021008591A1 (zh) 数据传输方法、装置及系统
CN116708598A (zh) 用于实时网络传输的系统及方法
JP2006222659A (ja) 無線通信装置、無線通信システム及び方法
CN109039893A (zh) 一种基于广域ip网络的数据交换网络及方法
US11483733B2 (en) Transporting a multi-transport network context-identifier (MTNC- ID) across multiple domains
CN102420745A (zh) 一种3g通信的方法和系统
Lyu et al. Ndn-based multimedia content distribution in space-ground integration network
Bukhari et al. Simulated view of SDN based multicasting over D2D enabled heterogeneous cellular networks
US12021560B1 (en) Apparatus and method for joint profile-based slicing of mobile access and optical backhaul
CN111614471B (zh) 一种基于sdn的dcqcn数据传输系统及传输方法

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