一种基于应用层协议的带宽合并中间件系统技术方案

技术编号:9956935 阅读:91 留言:0更新日期:2014-04-23 17:08
本发明专利技术公开了一种应用层协议的带宽合并中间件系统,包括上层连接管理模块、请求管理模块、远端连接管理模块和运行时数据统计分析模块,上层连接管理模块管理与上层应用进行通信的连接;请求管理模块缓存原始请求,根据运行时数据和应用层协议分割请求,调度到不同网络接口上进行分发;响应管理模块缓存不同网络接口到达的子响应,根据调度策略合并响应,并递交给上层连接管理模块;远程连接管理模块将请求发送给远程服务器,接收反馈的数据并发送至响应管理模块;运行时数据统计分析模块统计数据传输的速度和延迟,为制定调度策略提供运行时数据。实施本发明专利技术能够从应用层协议的角度出发分解任务并方便地部署在移动设备上,以达到带宽合并的目的。

【技术实现步骤摘要】
一种基于应用层协议的带宽合并中间件系统
本专利技术涉及移动网路与网络协议领域,更具体地说,本专利技术涉及一种基于应用层协议的带宽合并中间件系统。
技术介绍
随着科技的发展时代的进步,智能手机、平板电脑等移动上网设备已经取代传统PC成为人们连接互联网的首选。然而由于无线网络质量较差,导致移动设备用户体验低,但另一方面我们也认识到,各移动设备的多网络接口却不能同时应用导致隐形的资源浪费。因此,如何同时利用多条网络接口来提高网络质量成为亟待解决的问题。带宽合并是指通过利用设备多条网络接口的能力来提升网络的吞吐量、可靠性、端到端延迟等的技术,从不同的角度出发有着不同的解决方法。其中一类方法是从传输层的角度出发,可在移动设备上使用Multi-TCP协议进行带宽合并,并分析了网络整体的吞吐量,但当前大多数移动设备并不支持Multi-TCP特性,若要使这些设备使用MPTCP特性则需要额外的代理服务器;而另外一些方法则是扩展了TCP协议,并取得了不错的性能,但实现方面需要改写操作系统的协议栈;除此之外还有一些方法建立了一些新的架构,在传输层支持带宽合并,但需要服务器端有相应服务进行支持。另一种方法是针对具体应用的带宽合并方式,如针对流媒体应用进行带宽合并,但同样因为考虑到具体应用的特性,如流媒体的分片启动延迟等特性而降低了方法的通用性,其次这类方法往往在进行带宽合并时,往往仅考虑到网络吞吐量,而并没有建立统一的模型将可靠性、延迟等其它指标考虑在内。
技术实现思路
针对现有技术的以上缺陷或改进需求,本专利技术提供了一种基于应用层协议的带宽合并中间件系统,其能够从应用层协议的角度出发分解任务并方便地部署在移动设备上,以达到带宽合并的目的。本专利技术解决其技术问题所采用的技术方案是,提供一种基于应用层协议的带宽合并中间件系统,包括上层连接管理模块、请求管理模块、远端连接管理模块和运行时数据统计分析模块,所述上层连接管理模块与请求管理模块、响应管理模块相连,所述请求管理模块与响应管理模块、运行时数据统计分析模块和远程连接管理模块相连,所述响应管理模块与请求管理模块和远程连接管理模块相连,所述上层连接管理模块用于管理与上层应用进行通信的连接,接收上层应用发送的请求并将请求传递给请求管理模块,同时将响应管理模块中的响应递交给上层应用;所述请求管理模块用于缓存原始请求,并根据运行时数据统计分析模块发送的运行时数据及请求所依赖的具体应用层协议对原始请求进行分割,制定调度策略将其调度到不同的网络接口上进行分发;所述响应管理模块用于缓存不同网络接口到达的子响应,根据请求管理模块的调度策略合并响应,并递交给上层连接管理模块;所述远程连接管理模块用于管理设备与远程服务器之间的连接,将请求管理模块中的请求发送给远程服务器,同时接收远程服务器的数据并发送至响应管理模块;所述运行时数据统计分析模块用于统计远程连接管理模块中数据传输的速度和延迟,同时为请求管理模块制定调度策略提供运行时数据。在本专利技术所述的基于应用层协议的带宽合并中间件系统中,所述上层连接管理模块包括第一连接池、第一上行递交子模块、第一下行递交子模块,所述第一连接池用于存放当前和上层应用建立的所有连接,当有新连接进入时将其加入第一连接池,同时当旧的连接断开时将其从第一连接池中移除,所述第一连接池还用于负责跟踪所有连接状态,及时释放失效的连接;所述第一上行递交子模块执行于新线程中,用于不断遍历第一连接池中的连接,若其中有数据,则将数据实例化为原始请求对象发送至请求管理模块,若在读取数据时发生错误,则通知第一连接池释放此次连接;所述第一下行递交子模块执行于新线程中,用于不断遍历响应管理模块中的响应,若其中有未递交的响应,则递交给第一连接池中相应的连接,同时通知响应管理模块移除此连接;若在递交的过程中发生错误,则通知第一连接池释放此连接。在本专利技术所述的基于应用层协议的带宽合并中间件系统中,所述请求管理模块包括原始请求池子模块、调度策略子模块和子请求队列子模块,所述原始请求池子模块用于缓存从上层连接管理模块中传输下来的原始请求,以提供给调度策略子模块使用;所述调度策略子模块用于从原始请求池子模块获取原始请求,通过运行时数据统计分析模块获取历史时段的网络状态,并根据原始请求所依赖的具体应用层协议对原始请求进行分割,并将分割后的子请求放到子请求队列子模块中;所述子请求队列子模块为每一个网络接口建立一个子请求队列,所述队列存放需要通过相应网络接口向外发送的请求。在本专利技术所述的基于应用层协议的带宽合并中间件系统中,所述响应管理模块包括原始响应池子模块、合并策略子模块和子响应池,所述原始响应池子模块用于存放还没有递交给上层的、和原始请求一一对应的原始响应;所述合并策略子模块用于接收从请求管理模块接收的原始请求的分割信息,根据所述信息在子响应池中寻找相应的子响应,若寻找到了一个原始请求的所有子响应,则将这些子响应重组为原始响应,并放到原始响应池子模块中;所述子响应池用于缓存远程连接管理模块发送的子响应,并将所述子响应发送至所述合并策略子模块进行重组。在本专利技术所述的基于应用层协议的带宽合并中间件系统中,所述远程连接管理模块包括第二连接池、第二上行递交子模块和第二下行递交子模块,所述第二连接池用于存放目前和远程服务器建立的所有连接,当有新连接进入时将其加入第二连接池,同时当旧的连接断开时将其从第二连接池中移除,所述第二连接池还用于负责跟踪所有连接状态,及时释放失效的连接;所述第二上行递交子模块执行于新线程中,用于不断递交子请求队列中的请求,并将不同队列中的请求通过相应的网络接口进行发送,同时若在发送数据时发生错误,则通知第二连接池释放此次连接;所述第二下行递交子模块执行于新线程中,用于不断遍历第二连接池中的连接,若其中有数据,则将数据实例化为子响应对象,并发送给响应管理模块,若在读取数据时发生错误,则通知第二连接池释放此连接。在本专利技术所述的基于应用层协议的带宽合并中间件系统中,所述运行时数据统计分析模块包括数据分析子模块和数据统计子模块,所述数据分析子模块用于分析数据统计子模块存放的信息,预测当前情况下每个网络接口的丢包率、传输速度和端到端延时信息;所述数据统计子模块用于统计远程连接管理模块传输时的情况,并记录下来供数据分析子模块使用。因此,本专利技术可以获得以下的有益效果:根据运行时数据统计分析模块统计分析得到的当前网络状况,响应管理模块可制定不同的带宽合并策略并针对不同的网络环境加以优化,以尽可能地降低能耗;通过上层连接管理模块接收上层应用发来的请求,请求管理模块根据该请求所依赖的具体应用层协议对请求进行分割,使得本专利技术能够分解应用层协议进行带宽合并,对上层应用具有很高的透明性。本专利技术可以中间件的方式透明地部署在现有移动设备上,不需要改变操作系统进行带宽合并,且能保证充分利用每个网络接口,具有较高的带宽合并率。附图说明下面将结合附图及实施例对本专利技术作进一步说明,附图中:图1是本专利技术基于应用层协议的带宽合并中间件系统总体框图;图2是本专利技术基于应用层协议的带宽合并中间件系统细化框图。具体实施方式为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本专利技术进行进一步详细说明。应本文档来自技高网...
一种基于应用层协议的带宽合并中间件系统

【技术保护点】
一种基于应用层协议的带宽合并中间件系统,包括上层连接管理模块、请求管理模块、远端连接管理模块和运行时数据统计分析模块,所述上层连接管理模块与请求管理模块、响应管理模块相连,所述请求管理模块与响应管理模块、运行时数据统计分析模块和远程连接管理模块相连,所述响应管理模块与请求管理模块、远程连接管理模块相连,其特征在于,所述上层连接管理模块用于管理与上层应用进行通信的连接,接收上层应用发送的请求并将请求传递给请求管理模块,同时将响应管理模块中的响应递交给上层应用;所述请求管理模块用于缓存原始请求,并根据运行时数据统计分析模块发送的运行时数据及请求所依赖的具体应用层协议对原始请求进行分割,制定调度策略将其调度到不同的网络接口上进行分发;所述响应管理模块用于缓存不同网络接口到达的子响应,根据请求管理模块的调度策略合并响应,并递交给上层连接管理模块;所述远程连接管理模块用于管理设备与远程服务器之间的连接,将请求管理模块中的请求发送给远程服务器,同时接收远程服务器的数据并发送至响应管理模块;所述运行时数据统计分析模块用于统计远程连接管理模块中数据传输的速度和延迟,同时为请求管理模块制定调度策略提供运行时数据。...

【技术特征摘要】
1.一种基于应用层协议的带宽合并中间件系统,包括上层连接管理模块、请求管理模块、远程连接管理模块和运行时数据统计分析模块,所述上层连接管理模块与请求管理模块、响应管理模块相连,所述请求管理模块与响应管理模块、运行时数据统计分析模块和远程连接管理模块相连,所述响应管理模块与请求管理模块、远程连接管理模块相连,其特征在于,所述上层连接管理模块用于管理与上层应用进行通信的连接,接收上层应用发送的请求并将请求传递给请求管理模块,同时将响应管理模块中的响应递交给上层应用;所述请求管理模块用于缓存原始请求,并根据运行时数据统计分析模块发送的运行时数据及请求所依赖的具体应用层协议对原始请求进行分割,制定调度策略将其调度到不同的网络接口上进行分发;所述响应管理模块用于缓存不同网络接口到达的子响应,根据请求管理模块的调度策略合并响应,并递交给上层连接管理模块;所述远程连接管理模块用于管理设备与远程服务器之间的连接,将请求管理模块中的请求发送给远程服务器,同时接收远程服务器的数据并发送至响应管理模块;所述运行时数据统计分析模块用于统计远程连接管理模块中数据传输的速度和延迟,同时为请求管理模块制定调度策略提供运行时数据。2.如权利要求1所述的基于应用层协议的带宽合并中间件系统,其特征在于,所述上层连接管理模块包括第一连接池、第一上行递交子模块、第一下行递交子模块,所述第一连接池用于存放当前和上层应用建立的所有连接,当有新连接进入时将其加入第一连接池,同时当旧的连接断开时将其从第一连接池中移除,所述第一连接池还用于负责跟踪所有连接状态,及时释放失效的连接;所述第一上行递交子模块执行于新线程中,用于不断遍历第一连接池中的连接,若其中有数据,则将数据实例化为原始请求对象发送至请求管理模块,若在读取数据时发生错误,则通知第一连接池释放此次连接;所述第一下行递交子模块执行于新线程中,用于不断遍历响应管理模块中的响应,若其中有未递交的响应,则递交给第一连接池中相应的连接,同时通知响应管理模块移除此连接;若在递交的过程中发生错误,则通知第一连接池释放此连接。3.如权利要求1或2所述的基于应用层协议的带宽合并中间件系统,其特征在于,所述请求管理模块包括原始请求池子模块、调度策略子模块和子请求队列子模块,所述原始请求池子模块用于缓存从上层...

【专利技术属性】
技术研发人员:廖小飞金海陆枫王子锐
申请(专利权)人:华中科技大学
类型:发明
国别省市:湖北;42

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

1