一种带宽资源共享方法及装置的制造方法

文档序号:10473788阅读:241来源:国知局
一种带宽资源共享方法及装置的制造方法【专利摘要】本发明提供一种带宽资源共享方法及装置,由控制器确定用于协助上传的终端及其数量k,由待上传数据的终端根据协作上传数据的终端的数量将待上传数据划分为(k+1)份,由所述k个终端协助待上传数据的终端分别同步上传每份待上传数据,不再局限于利用一个终端设备的上行带宽资源,而是合理利用多个终端设备的上行带宽资源,从而实现带宽资源的合理分配;该方案无需运营商后台修改用户的订阅服务内容,实现简单、灵活,也无需用户额外向运营商支付费用。【专利说明】一种带宽资源共享方法及装置
技术领域
[0001]本发明涉及通信
技术领域
,具体涉及一种带宽资源共享方法及装置。【
背景技术
】[0002]随着国家“宽带中国”战略的逐渐落地实施和4G普及带来的移动宽带的普及,一方面,终端用户的家庭带宽越来越大,终端用户越来越倾向于使用在线的SaaSUoftware-as-a-Service,软件即服务)业务,如云盘、在线办公编辑器、在线娱乐等。另一方面,手机的使用率逐渐超过固定终端,受到手机、Pad等瘦终端的性能限制,大量的数据需要放在服务器,终端仅作为显示界面,如在线视频播放,在线文本、视频编辑等,而且,经统计发现,用户使用手机、Pad(PortableAndroidDevice,平板电脑)终端访问大流量云服务时多在WiFi环境下。因此,宽带网络的普及推动应用从基于本地应用的模式逐渐向基于云的在线应用切换。[0003]无独有偶,随着移动互联网的兴起,应用、服务、内容的产生和提供逐渐从大而集中的企业向小而分散的小企业乃至用户转变,同时,受长尾效应影响,UGC(UserGenerateContent,用户产生内容)未来可能成为互联网内容的主流。[0004]上述两种发展趋势:从本地到云的应用模式的逐步切换和内容从网络边缘节点到网络核心流动的趋势加强,对运营商提供宽带服务的模式提出了新的需求,一方面需要提供更大的带宽,减小用户使用在线服务的等待时间,另一方面,由于用户使用在线服务时需要更多的数据同步上传到云端,也需要运营商提供更大的上行带宽。但是,当前运营商提供宽带服务时,多采用非对称DSL技术,即终端用户的网络上行速率和下行速率不一致,一般是下行速率远远大于上行速率,这是基于内容从网络向用户流动为主的假设服务的,在这种场景下,上行带宽并不受到重视。但是,这种上下行带宽的不对称对当前移动互联网发展的两种模式形成巨大制约,亟待解决。[0005]为了满足对上行带宽的需求,通常需要运营商静态修改用户的订阅服务内容,并收取额外费用。而这种方式存在以下缺陷:首先,这种修改流程周期较长,不能实现带宽的动态提升与下降;其次,需要用户支付额外的费用,增加了用户使用宽带服务的成本;第三,有些用户的上行带宽一直闲置,而运营商进行了资源预留,造成资源浪费;第四,运营商的上行带宽提升有限,即使申请并愿意支付相关费用,对于非对称DSL技术而言,上行带宽提升难以超过链路和设备支持的最大速率。[0006]因此,亟需一种带宽资源共享方案,以解决上述技术问题。【
发明内容】[0007]本发明针对现有技术中存在的上述不足,提供一种带宽资源共享方法及装置,用以解决上行带宽资源分配不合理、上行带宽提升有限、周期长、用户支付费用高的问题。[0008]本发明为解决上述技术问题,采用如下技术方案:[0009]本发明提供一种带宽资源共享方法,包括:[0010]控制器接收终端发送的携带有待上传数据大小D的数据上传请求,根据待上传数据大小D确定用于协助上传的终端的数量k,k>l,并确定k个用于协助上传的终端;[0011]向发起数据上传请求的终端返回携带有所述k个终端的终端标识和地址的数据上传响应,以使发起数据上传请求的终端将待上传数据均分为(k+Ι)份,并分别请求所述k个终端向控制器上传其中一份待上传数据;[0012]接收发起数据上传请求的终端和所述k个终端上传的各份待上传数据。[0013]本发明还提供一种带宽资源共享方法,包括:[0014]终端向控制器发送携带有待上传数据大小D的数据上传请求,以使控制器根据待上传数据大小D确定用于协助上传的终端的数量k以及k个用于协助上传的终端,k>l;[0015]当接收到控制器返回的数据上传响应时,获取其中携带的k个终端的终端标识和地址,将待上传数据均分为(k+Ι)份,并分别请求所述k个终端向控制器上传其中一份待上传数据;[0016]向控制器上传本设备的那份待上传数据。[0017]本发明还提供一种控制器,包括:接收模块、第一处理模块和发送模块,[0018]接收模块用于,接收终端发送的携带有待上传数据大小D的数据上传请求;以及,接收发起数据上传请求的终端和所述k个终端上传的各份待上传数据;[0019]第一处理模块用于,根据待上传数据大小D确定协助上传的终端的数量k,k>l,并确定k个用于协助上传的终端;以及指示发送模块向发起数据上传请求的终端返回携带有所述k个终端的终端标识和地址的数据上传响应,以使发起数据上传请求的终端将待上传数据均分为(k+Ι)份,并分别请求所述k个终端向控制器上传其中一份待上传数据。[0020]本发明还提供一种终端,包括:发送模块、接收模块、数据处理模块,[0021]发送模块用于,向控制器发送携带有待上传数据大小D的数据上传请求,以使控制器根据待上传数据大小D确定用于协助上传的终端的数量k以及k个用于协助上传的终端,k>1;[0022]接收模块用于,接收控制器返回的数据上传响应;[0023]数据处理模块用于,获取数据上传响应中携带的k个终端的终端标识和地址,将待上传数据均分为(k+Ι)份,并指示所述发送模块分别请求所述k个终端向控制器上传其中一份待上传数据;以及,指示发送模块向控制器上传本设备的那份待上传数据。[0024]本发明由控制器确定用于协助上传的终端及其数量k,由待上传数据的终端根据协作上传数据的终端的数量将待上传数据划分为(k+Ι)份,由所述k个终端协助待上传数据的终端分别同步上传每份待上传数据,不再局限于利用一个终端设备的上行带宽资源,而是合理利用多个终端设备的上行带宽资源,从而实现带宽资源的合理分配;该方案无需运营商后台修改用户的订阅服务内容,实现简单、灵活,也无需用户额外向运营商支付费用。【附图说明】[0025]图1为家庭宽带拓扑图;[0026]图2为智能家庭网关经由以太网组成的完全图;[0027]图3为本发明实施例提供的带宽资源共享系统架构图;[0028]图4为本发明实施例提供的带宽资源共享流程图之一;[0029]图5为本发明实施例提供的确定k个用于协助上传的终端的流程图;[0030]图6为本发明实施例提供的发起数据上传请求的终端向各用于协作上传的终端请求协作上传数据的流程图;[0031]图7为本发明实施例提供的控制器的结构示意图;[0032]图8为本发明实施例提供的终端的结构示意图。【具体实施方式】[0033]下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整的描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。[0034]针对现有技术存在的上述问题,本发明实施例提供了一种带宽资源共享方案,首先,基于现有的终端用户宽带接入部署架构,通过多用户组成层叠网共享上行带宽,从而实现单用户、多上行链路的带宽统计复用。其次,借助动态自适应的最优化策略选取协作上传节点,大幅降低数据上传时间,降低对协作节点自身上传数据的影响。第三,引入激励机制,避免恶意节点大量上传数据导致网络崩溃。[0035]如图1所示,宽带运营商一般采用两到三级接入的方式,当用户订阅宽带服务时,运营商会发给用户一个智能终端(即家庭网关),其上运行PPPoE(以太网上的点对点协议)拨号上网的客户端程序,每个拨号链接用订阅服务标识表示,即SID(SubSCripti0nID)标识,各个用户的家庭网关通过光纤或者双绞线的方式上联接入到一个接入交换机,接入交换机通过汇聚交换机和PPPoE服务器相连接,这样就建立了从用户侧的智能家庭网关到PPPoE服务器的连通的网络链路。[0036]智能家庭网关(SmartHomeGateway,SHG)是放置在终端用户家中的网络终端设备,一方面实现PPPoE拨号功能接入DSL(DigitalSubscriberLine,数字用户线路)网络,另一方面作为用户侧常驻的终端设备提供多设备接入网络服务,使得用户的多个设备,例如个人电脑、Pad、手机等,均能共享同一个DSL网络连接服务,当今的家庭网关还可以提供文件缓存,视频加速等应用,甚至可以安装用户自定义的应用与服务,以提供定制化服务。[0037]服务订阅(Subscript1n)是指运营商宽带业务的订阅,每个服务订阅具有一个订阅号SID标识,在图1所示的实例中,共有η个订阅号,分别是从I到η。生活实践中,通常一个用户订阅一种宽带服务,即单拨模式,为行文简化起见,本发明仅以单拨模式为例进行说明,然而本发明的方案也适用于多拨模式。[0038]当用户需要上网时,驻留在智能家庭网关上的拨号程序会拨号连接PPPoE服务器,PPPoE与互联网(Internet)相连。拨号成功后,智能家庭网关会和PPPoE服务器建立基于隧道的逻辑链接,如图1中虚线所示,所有访问互联网的流量都经过此逻辑链接。同时,PPPoE服务器会为家庭网关分配网络IP地址,同时依据订阅服务的不同限定该智能家庭网关的上网速率,分为上行速率和下行速率O上行带宽(UploadBandwidth)是指,智能家庭网关发送数据到互联网的速率,以MB/s为单位,用bwu表示,订阅号为SID的订阅服务的上行速率用bwu(SID)表示。下行带宽(DownloadBandwidth)是指智能家庭网关从互联网接收数据的速率,以MB/s为单位,用bwd表示,订阅号为SID的订阅服务的下行速率用bwd(SID)表示。由于DSL技术的限ffjij,通常情况下,上行速率小于上行速率,S卩bmi(SID)〈bwd(SID)。[0039]图1中的实线表示的网络连接一般为以太网连接,具备这种以太网连接互通性的各智能家庭网关也可以通信,且这种通信速率远大于订阅服务的带宽bwu和bwd。[0040]结合图1和图2所示,图1中虚线所示的网络连接使得各智能家庭网关组成一个全连接网络,该智能家庭网关经由以太网组成的完全图如图2所示,每个节点代表一个智能家庭网关,任意两个智能家庭网关之间都存在一个不经过其他节点转发的网络链路,即构成一个无向完全图。由于以太网的技术特性,任意节点间的双向带宽是对称的,即节点u和节点V之间的发送和接收速率是相等,因此我们用bw(u,V)代表节点u和节点V之间的网络带宽。节点u和节点V之间的带宽bw(u,V)大于节点u或者节点V的PPPoE逻辑链路的上行速率bwu(u)、bwu(v)和下行速率bwd(u)、bwd(v)。[0041]本发明提供一种带宽资源共享方法,应用于带宽资源共享系统中,以下结合图3对该带宽资源共享系统做详细说明。如图3所示,该带宽资源共享系统包括:控制器、带宽检测装置、计费装置和多个终端。计费装置内存储每个终端的积分账户余额等信息,并负责积分在各个终端的账户之间转移。当有一个终端加入时,该终端可以获取一定的积分(例如1000积分),即可以请其他终端协助上传IGB数据。每个终端周期向计费装置上报自己当前协助上传的价格,即协助上传IMB数据收取的积分数值,以P表示。带宽检测装置负责监控各个终端的资源利用率动态信息,各终端周期向带宽检测装置上报空闲上传带宽bwuf,该周期一般小于一个数据块(一般为1M)的上传时间。控制器用于响应终端的数据上传请求,并返回满足协作上传条件的终端的集合。这里所说的终端即为图2中的节点,在本发明中,以3个终端为例进行说明,各终端之间经由以太网组成如图2所示的完全图。[0042]以下结合图3和图4,详细说明本发明的带宽资源共享方法,如图4所示,该方法包括以下步骤:[0043]步骤401,接收终端发送的携带有待上传数据大小D的数据上传请求。[0044]具体的,当某一终端(例如终端u)有上传数据的需求时,向控制器发送数据上传请求,数据上传请求中携带待上传数据的大小D。[0045]需要说明的是,待上传数据不能太大,一般D小于10M,如果大于10M,可以将待上传数据分割,并多次发起数据上传请求。[0046]步骤402,根据待上传数据大小D确定用于协助上传的终端的数量k,k>l,并确定所述k个用于协助上传的终端。[0047]具体的,控制器从数据上传请求中获取待上传数据的大小D,并根据待上传数据的大小D确定用于协助上传的终端以及所述用于协助上传的终端的数量k,例如,k=2,分别为终端V和终端W。[0048]控制器确定k个用于协助上传的终端,具体包括:[0049]获取各终端的积分信息和/或除发起数据上传请求的终端之外的其他终端的空闲带宽,并根据各终端的积分信息和/或除发起数据上传请求的终端之外的其他终端的空闲带宽,确定k个用于协助上传的终端。[0050]也就是说,可以通过三种方式确定k个用于协助上传的终端。方式一:根据除发起数据上传请求的终端之外的其他终端的空闲带宽,确定k个用于协助上传的终端。方式二:根据各终端的积分信息,确定k个用于协助上传的终端。方式三:根据各终端的积分信息和/除发起数据上传请求的终端之外的其他终端的空闲带宽,确定k个用于协助上传的终端。后续再分别对这三种方式进行详细说明。[0051]步骤403,向发起数据上传请求的终端返回携带有所述k个终端的终端标识和地址的数据上传响应,以使发起数据上传请求的终端将待上传数据均分为(k+Ι)份,并分别请求所述k个终端向控制器上传其中一份待上传数据。[0052]具体的,控制器确定出k个用于协作上传的终端后,向发起数据上传请求的终端u返回数据上传响应,其中携带有所述k个终端的终端标识和地址。当接收到控制器返回的数据上传响应时,发起数据上传请求的终端u将待上传数据均分为(k+Ι)份,每份待上传的数据的大小为D/(k+l)。终端u分别请求所述k个终端向控制器上传其中一份待上传数据。[0053]也就是说,控制器向终端u返回数据上传响应,其中携带有终端V和终端w的终端标识和地址(包括IP地址和端口号),终端U将待上传数据均分为3份,每份待上传的数据的大小为D/3,终端u分别请求终端V和终端w向控制器上传各自分配到的那份待上传数据。[0054]步骤404,接收发起数据上传请求的终端和所述k个终端上传的各份待上传数据。[0055]具体的,各终端数据传输正常的情况下,控制器分别接收终端U、终端V和终端w上传的大小为D/3的待上传数据。发生终端数据传输异常的情况,后续再详细描述。[0056]通过步骤401-404可以看出,由控制器确定用于协助上传的终端及其数量k,由待上传数据的终端根据协作上传数据的终端的数量将待上传数据划分为(k+Ι)份,由所述k个终端协助待上传数据的终端分别同步上传每份待上传数据,不再局限于利用一个终端设备的上行带宽资源,而是合理利用多个终端设备的上行带宽资源,从而实现带宽资源的合理分配;该方案无需运营商后台修改用户的订阅服务内容,实现简单、灵活,也无需用户额外向运营商支付费用。[0057]需要说明的是,在步骤403中,控制器在所述数据上传响应中还携带所述k个终端的空闲带宽,以使发起数据上传请求的终端u根据待上传数据和所述k个终端的空闲带宽确定等待时长T。[0058]以下分别对上述三种确定k个用于协助上传的终端的方式进行详细说明。[0059]参见图2,由于节点u和节点V之间的带宽bw(u,V)大于节点u和节点V的PPPoE逻辑链路的上行速率bwu(u)、bwu(v)以及下行速率bwd(u)、bwd(v)。因此,可以采用方式一,将部分数据发送给逻辑链路具有空闲上行带宽的节点转发,以实现协作上传。以节点u为数据发送方为例,当节点u需要发送数据到互联网时,节点u可以将部分数据发送给与节点u相邻的节点V,若节点V的PPPoE逻辑链路的上行带宽具有空闲容量,由节点V帮助其转发到互联网中数据接收方的地址,从而实现节点u发送数据的速率大于其订阅服务的上行速率bwu(u),并小于bwu(u)+bwu(V)。节点u可以请求图2中所有的其他节点协作上传,所以节点u发送数据的上行速率的上限是图2中所有节点的空闲发送数据上行速率之和与节点u对应的智能家庭网关连接到接入交换机的带宽的较小值。即[0060]Limit(UploadSpeed(U))=ΜΙΝ(Σ(bwu(u)+bwu(v)+bwu(w)+...),bw(u));[0061]由于bw(u)远大于bwu(u),因此通常情况下,[0062]Limit(UploadSpeed(u))=Σ(bwu(u)+bwu(v)+bwu(w)+...)[0063]由于bmi(v)和bmi(w)大于等于0,因此,节点u的上行速率可以远大于其订阅服务的上行速率bwU(U),同时,其他节点闲置的上行带宽也可以得到利用。[0064]采用方式一根据除发起数据上传请求的终端之外的其他终端的空闲带宽,确定k个用于协助上传的终端,具体包括:[0065]控制器向带宽检测装置获取除发起数据上传请求的终端之外的其他终端的空闲带宽,并将所述终端根据各自空闲带宽由大到小排序,在该排序队列中选取前k个终端作为用于协助上传的终端。[0066]然而,这种无代价的协作上传机制在安全上有缺陷,如果有个别终端恶意地上传大量无用的数据,会造成其他终端为该恶意终端免费上传大量无用数据,这样会造成系统中各终端的上行带宽资源耗尽,其他终端的正常协作上传请求不能被处理。[0067]为了解决这个问题,本发明的另一实施例中引入了激励机制,将免费协作上传变为基于积分计价的奖励行为(即前述的方式二和方式三的方案)。[0068]在采取方式二和方式三的技术方案中,根据各终端的积分信息,或者,根据各终端的积分信息和/除发起数据上传请求的终端之外的其他终端的空闲带宽,确定k个用于协助上传的终端。[0069]各终端的积分信息可以包括:发起数据上传请求的终端能够提供的支付积分B,所述支付积分B携带于所述数据上传请求中。也就是说,在步骤401中,终端u向控制器发送的数据上传请求中不但携带待上传数据大小D,还携带终端u能够提供的支付积分B。[0070]在控制器根据待上传数据大小D确定用于协助上传的终端的数量k之前,确定能否为发起数据上传请求的终端分配用于协作上传的终端,具体执行以下步骤:[0071]控制器获取所述数据上传请求中携带的支付积分B,向计费装置获取发起数据上传请求的终端的积分余额,并将发起数据上传请求的终端的积分余额与支付积分B相比较。[0072]若发起数据上传请求的终端的积分余额大于或等于支付积分B,则根据各终端的积分信息和除发起数据上传请求的终端之外的其他终端的空闲带宽,或者,根据各终端的积分信息,确定k个用于协助上传的终端。[0073]若发起数据上传请求的终端的积分余额小于支付积分B,说明发起数据上传请求的积分余额不足以向用于协作上传的终端支付积分,因此,控制器不支持协作上传,则向发起数据上传请求的终端返回数据上传响应,此时,该数据上传响应中没有携带任何终端标识和地址信息,发起数据上传请求的终端只能够自己上传数据。[0074]进一步的,各终端的积分信息还可以包括所述其他终端协助上传数据单位流量的积分报价P,P为协助上传单位数据(例如IM数据)收取的积分,P是各终端周期上报给计费装置的。[0075]方式二和方式三中确定k个用于协助上传的终端的流程如图5所示,可以包括以下步骤:[0076]步骤501,向计费装置获取其他终端协助上传数据单位流量的积分报价P。[0077]具体的,周期向计费装置上报协助上传数据单位流量的积分报价P,控制器在确定出用于协助上传的终端的数量k之后,向计费装置获取其他终端协助上传数据单位流量的积分报价P。[0078]步骤502,确定P小于或等于奖励积分B/k的终端,以及P小于或等于B/k的终端的数量Nο[0079]具体的,控制器计算各用于协作上传的终端能够获取的奖励积分B/k,并将获取到的各终端的P与B/k相比较,确定P小于或等于奖励积分B/k的终端,以及及P小于或等于B/k的终端的数量N。[0080]步骤503,将N与k相比较,若N=k,则将所述P小于或等于B/k的终端作为用于协助上传的终端,否则,执行步骤505,。[0081]具体的,若N=k,则将所述P小于或等于B/k的终端作为用于协助上传的终端,若N与k不相等,则需要进一步判断N与k的大小,即执行步骤505。[0082]步骤504,判断N是否大于k,若是,则执行步骤505,否则,结束本流程。[0083]具体的,若N>k,说明当前能够协作上传的终端的数量N大于确定出的协作上传的终端的数量k,则需要进一步在N个终端中选择出k个终端,即执行步骤505。[0084]若N〈k,说明能够协助上传的终端的数量不足,则结束本流程,控制器向发起数据上传请求的终端返回数据上传响应,此时,该数据上传响应中没有携带任何终端标识和地址信息,发起数据上传请求的终端可以放弃协作上传,或者增加支付积分B并重新发起数据上传请求。[0085]步骤505,向带宽检测装置获取所述P小于或等于B/k的N个终端的空闲带宽。[0086]具体的,当N>k时,控制器根据终端的空闲带宽确定最终的用于协作上传的终端,即控制器向带宽检测装置获取所述P小于或等于B/k的N个终端的空闲带宽。[0087]步骤506,将所述N个终端根据空闲带宽由大到小排序,并在该排序队列中选取前k个终端作为用于协助上传的终端。[0088]需要说明的是,在用于协作上传的终端在协作上传完本设备的部分待上传数据后,控制器还请求计费服务器向成功上传数据的用于协作上传的终端发放奖励积分,过程具体如下:[0089]发起数据上传请求的终端通过向所述k个终端分别发送携带有每份待上传数据的协作上传数据请求,以请求所述k个终端向控制器上传相应份的待上传数据。发起数据上传请求的终端在接收到所述k个终端返回的协助上传数据响应之后,向控制器发送积分支付请求,积分支付请求中携带有成功上传数据的终端的终端标识和所述发起数据上传请求的终端的终端标识。[0090]控制器向计费装置发送携带有支付积分B、奖励积分B/k、成功上传数据的终端的终端标识和所述发起数据上传请求的终端的终端标识的积分支付请求,以使计费装置扣除发起数据上传请求的终端的B个积分,并向上传成功的终端支付B/k个积分。[0091]以下结合图6,详细说明发起数据上传请求的终端向各用于协作上传的终端请求协作上传数据的流程,如图6所示,该流程包括以下步骤:[0092]步骤601,当接收到控制器返回的数据上传响应时,获取其中携带的所述k个终端的空闲带宽。[0093]具体的,发起数据上传请求的终端u从数据上传响应中获取所述k个终端的空闲带宽。[0094]步骤602,根据所述k个终端的空闲带宽和每份待上传数据的大小,分别计算所述k个终端上传其中一份待上传数据的时长,并选取其中最大时长作为等待时长T。[0095]具体的,发起数据上传请求的终端u根据所述k个终端的空闲带宽和每份待上传数据的大小,分别计算所述k个终端上传其中一份待上传数据的时长。其中,终端上传其中一份待上传数据的时长等于其中一份待上传数据的大小与该终端的空闲带宽的比值。发起数据上传请求的终端U从各时长中选取其中最大时长作为等待时长T。[0096]等待时长T是各终端上传每份待上传数据所花费的预期时长,若超过该等待时长,未完成数据的上传,则认为该终端的上传任务失败。[0097]步骤603,分别向所述k个终端发送携带有每份待上传数据和等待时长T的协助上传数据请求,以使所述k个终端向控制器上传其中一份待上传数据,并在等待时长到达时停止上传。[0098]具体的,发起数据上传请求的终端u分别向所述k个终端发送协助上传数据请求,协助上传数据请求中携带有每份待上传数据和等待时长T。收到该协助上传数据请求的终端向控制器上传本终端分配到的那份待上传数据,当等待时长T到达时停止上传,本次协助上传任务失败。[0099]步骤604,接收所述k个终端返回的协助上传数据响应,获取协助上传数据响应中携带的上传状态标识。[0100]具体的,若终端成功上传本终端分配到的那份待上传数据,则在完成数据上传时,向发起协助上传数据请求的终端U返回协助上传数据响应,其中携带有表示上传成功的状态标识。[0101]若终端未成功上传本终端分配到的那份待上传数据,则在等待时长T到达时,向发起协助上传数据请求的终端u返回返回协助上传数据响应,其中携带有表示上传失败的状态标识。[0102]步骤605,根据上传状态标识判断待上传数据是否全部上传,若未全部上传,则执行步骤606,否则,结束本流程。[0103]具体的,发起协助上传数据请求的终端u根据协助上传数据响应中的状态标识判断待上传数据是否全部上传,若所述k个终端均返回表示上传成功的状态标识,说明k个终端均上传成功,则结束流程。否则,需要对未成功上传的数据进行重传,即执行步骤606。[0104]步骤606,根据上传状态标识确定重传数据,并向控制器发送携带有待重传数据大小的数据上传请求。[0105]具体的,发起协助上传数据请求的终端u根据表示上传失败的状态标识确定并整合需要重传的数据,并再次向控制器发送数据上传请求,该数据上传请求中携带有待重传数据大小,以使控制器根据待重传数据大小确定用于协助上传的终端的数量m,m>l,并确定所述m个用于协助上传的终端。也就是说,若待上传的数据未能够一次全部上传,则再次按照步骤401-404进行重新上传,直到全部待上传的数据全部成功上传为止。[0106]需要说明的是,发起协助上传数据请求的终端u可以根据需要重传的数据的大小决定是再次请求协作上传的终端辅助重新上传,或者,由有本设备完成数据重传。[0107]进一步的,在步骤604之后,该流程还包括以下步骤:根据上传状态标识向控制器发送携带有成功上传数据的终端的终端标识和本设备的终端标识的积分支付请求,从而使控制器请求计费装置完成积分的扣除(支付)和奖励(发放)。[0108]本发明通过结合终端的空闲带宽和积分激励机制选取协作上传的终端,不仅能够大幅降低数据上传时间,还可以降低对协作上传的终端自身上传数据的影响。同时,由于空闲上传带宽bwuf是动态变化的,每次上传选取的最优的协作上传的终端可能不同,但均能保证是当前最优的选取结果。通过引入激励机制,可以避免恶意节点大量上传数据导致网络崩溃。[0109]基于相同的技术构思,本发明实施例还提供一种控制器,如图7所示,该控制器可以包括:接收模块11、第一处理模块12和发送模块13。[0110]接收模块11用于,接收终端发送的携带有待上传数据大小D的数据上传请求;以及,接收发起数据上传请求的终端和所述k个终端上传的各份待上传数据。[0111]第一处理模块12用于,根据待上传数据大小D确定协助上传的终端的数量k,k>l,并确定k个用于协助上传的终端;以及指示发送模块13向发起数据上传请求的终端返回携带有所述k个终端的终端标识和地址的数据上传响应,以使发起数据上传请求的终端将待上传数据均分为(k+Ι)份,并分别请求所述k个终端向控制器上传其中一份待上传数据。[0112]优选的,第一处理模块12具体用于,获取各终端的积分信息和/或除发起数据上传请求的终端之外的其他终端的空闲带宽,并根据各终端的积分信息和/或除发起数据上传请求的终端之外的其他终端的空闲带宽,确定k个用于协助上传的终端。[0113]优选的,各终端的积分信息包括:发起数据上传请求的终端能够提供的支付积分B,所述支付积分B携带于所述数据上传请求中。[0114]进一步的,所述控制器还可以包括第二处理模块14,第二处理模块14用于,获取所述数据上传请求中携带的支付积分B,并向计费装置获取发起数据上传请求的终端的积分余额;以及,将发起数据上传请求的终端的积分余额与支付积分B相比较。[0115]第一处理模块12具体用于,当发起数据上传请求的终端的积分余额大于或等于支付积分B时,根据各终端的积分信息和除发起数据上传请求的终端之外的其他终端的空闲带宽,或者,根据各终端的积分信息,确定k个用于协助上传的终端。[0116]进一步的,各终端的积分信息还包括所述其他终端协助上传数据单位流量的积分报价P。[0117]第一处理模块12具体用于,向计费装置获取其他终端协助上传数据单位流量的积分报价P,并确定P小于或等于奖励积分B/k的终端及P小于或等于B/k的终端的数量N;将N与k相比较,当N=Mt,将所述P小于或等于B/k的终端作为用于协助上传的终端;当N>k时,向带宽检测装置获取所述P小于或等于B/k的N个终端的空闲带宽,将所述N个终端根据空闲带宽由大到小排序,并在该排序队列中选取前k个终端作为用于协助上传的终端。[0118]进一步的,接收模块13还用于,接收发起数据上传请求的终端发送的积分支付请求,所述积分支付请求中携带有成功上传数据的终端的终端标识和所述发起数据上传请求的终端的终端标识;其中,所述积分支付请求是发起数据上传请求的终端在接收到所述k个终端返回的协助上传数据响应之后发送的。[0119]第一处理模块12还用于,指示发送模块13向计费装置发送携带有支付积分B、奖励积分B/k、成功上传数据的终端的终端标识和所述发起数据上传请求的终端的终端标识的积分支付请求,以使计费装置扣除发起数据上传请求的终端的B个积分,并向成功上传数据的终端支付B/k个积分。[0120]优选的,发送模块13发送的数据上传响应中还携带有所述k个终端的空闲带宽,以使发起数据上传请求的终端根据待上传数据和所述k个终端的空闲带宽确定等待时长T。[0121]基于相同的技术构思,本发明实施例还提供一种终端,如图8所示,该终端可以包括:发送模块21、接收模块22、数据处理模块23。[0122]发送模块21用于,向控制器发送携带有待上传数据大小D的数据上传请求,以使控制器根据待上传数据大小D确定用于协助上传的终端的数量k以及k个用于协助上传的终端,k>l0[0123]接收模块22用于,接收控制器返回的数据上传响应。[0124]数据处理模块23用于,获取数据上传响应中携带的k个终端的终端标识和地址,将待上传数据均分为(k+Ι)份,并指示所述发送模块21分别请求所述k个终端向控制器上传其中一份待上传数据;以及,指示发送模块向控制器上传本设备的那份待上传数据。[0125]进一步的,所述终端还包括等待时长计算模块24,等待时长计算模块24用于,获取数据上传响应中携带的所述k个终端的空闲带宽;根据所述k个终端的空闲带宽和每份待上传数据的大小,分别计算所述k个终端上传其中一份待上传数据的时长,并选取其中最大时长作为等待时长T。[0126]数据处理模块23具体用于,指示所述发送模块21分别向所述k个终端发送携带有每份待上传数据和等待时长T的协助上传数据请求,以使所述k个终端向控制器上传分配到的那份待上传数据,并在等待时长T到达时停止上传。[0127]接收模块22还用于,接收所述k个终端返回的协助上传数据响应。[0128]数据处理模块23还用于,获取协助上传数据响应中携带的上传状态标识,并根据上传状态标识判断待上传数据是否全部上传,若未全部上传,则根据上传状态标识确定重传数据;以及,指示所述发送模块向控制器发送携带有待重传数据大小的数据上传请求,以使控制器根据待重传数据大小确定用于协助上传的终端的数量m,m>l,并确定所述m个用于协助上传的终端。[0129]进一步的,数据处理模块23还用于,在获取协助上传数据响应中携带的上传状态标识之后,根据上传状态标识指示所述发送模块向控制器发送携带有成功上传数据的终端的终端标识和本设备的终端标识的积分支付请求。[0130]进一步的,发送模块21还用于,周期向带宽检测装置上报空闲带宽;和/或,周期向计费装置上报协助上传数据单位流量的积分报价P。[0131]可以理解的是,以上实施方式仅仅是为了说明本发明的原理而采用的示例性实施方式,然而本发明并不局限于此。对于本领域内的普通技术人员而言,在不脱离本发明的精神和实质的情况下,可以做出各种变型和改进,这些变型和改进也视为本发明的保护范围。【主权项】1.一种带宽资源共享方法,其特征在于,所述方法包括:控制器接收终端发送的携带有待上传数据大小D的数据上传请求,根据待上传数据大小D确定用于协助上传的终端的数量k,k>l,并确定k个用于协助上传的终端;向发起数据上传请求的终端返回携带有所述k个终端的终端标识和地址的数据上传响应,以使发起数据上传请求的终端将待上传数据均分为(k+Ι)份,并分别请求所述k个终端向控制器上传其中一份待上传数据;接收发起数据上传请求的终端和所述k个终端上传的各份待上传数据。2.如权利要求1所述的方法,其特征在于,所述确定k个用于协助上传的终端,具体包括:获取各终端的积分信息和/或除发起数据上传请求的终端之外的其他终端的空闲带宽,并根据各终端的积分信息和/或除发起数据上传请求的终端之外的其他终端的空闲带宽,确定k个用于协助上传的终端。3.如权利要求2所述的方法,其特征在于,各终端的积分信息包括:发起数据上传请求的终端能够提供的支付积分B,所述支付积分B携带于所述数据上传请求中;在根据各终端的积分信息和除发起数据上传请求的终端之外的其他终端的空闲带宽,或者,根据各终端的积分信息,确定k个用于协助上传的终端之前,所述方法还包括:获取所述数据上传请求中携带的支付积分B,并向计费装置获取发起数据上传请求的终端的积分余额;将发起数据上传请求的终端的积分余额与支付积分B相比较;若发起数据上传请求的终端的积分余额大于或等于支付积分B,则根据各终端的积分信息和除发起数据上传请求的终端之外的其他终端的空闲带宽,或者,根据各终端的积分信息,确定k个用于协助上传的终端。4.如权利要求3所述的方法,其特征在于,各终端的积分信息还包括所述其他终端协助上传数据单位流量的积分报价P;所述根据各终端的积分信息和除发起数据上传请求的终端之外的其他终端的空闲带宽,或者,根据各终端的积分信息,确定k个用于协助上传的终端,具体包括:向计费装置获取其他终端协助上传数据单位流量的积分报价P,并确定P小于或等于奖励积分B/k的终端及P小于或等于B/k的终端的数量N;将N与k相比较,若N=k,则将所述P小于或等于B/k的终端作为用于协助上传的终端;若N>k,则向带宽检测装置获取所述P小于或等于B/k的N个终端的空闲带宽,将所述N个终端根据空闲带宽由大到小排序,并在该排序队列中选取前k个终端作为用于协助上传的终端。5.如权利要求4所述的方法,其特征在于,所述方法还包括:接收发起数据上传请求的终端发送的积分支付请求,所述积分支付请求中携带有成功上传数据的终端的终端标识和所述发起数据上传请求的终端的终端标识;其中,所述积分支付请求是发起数据上传请求的终端在接收到所述k个终端返回的协助上传数据响应之后发送的;向计费装置发送携带有支付积分B、奖励积分B/k、成功上传数据的终端的终端标识和所述发起数据上传请求的终端的终端标识的积分支付请求,以使计费装置扣除发起数据上传请求的终端的B个积分,并向成功上传数据的终端支付B/k个积分。6.如权利要求1-5任一项所述的方法,其特征在于,在所述数据上传响应中还携带所述k个终端的空闲带宽,以使发起数据上传请求的终端根据待上传数据和所述k个终端的空闲带宽确定等待时长T。7.一种带宽资源共享方法,其特征在于,所述方法包括:终端向控制器发送携带有待上传数据大小D的数据上传请求,以使控制器根据待上传数据大小D确定用于协助上传的终端的数量k以及k个用于协助上传的终端,k>l;当接收到控制器返回的数据上传响应时,获取其中携带的k个终端的终端标识和地址,将待上传数据均分为(k+Ι)份,并分别请求所述k个终端向控制器上传其中一份待上传数据;向控制器上传本设备的那份待上传数据。8.如权利要求7所述的方法,其特征在于,当接收到控制器返回的数据上传响应时,所述方法还包括:获取其中携带的所述k个终端的空闲带宽;根据所述k个终端的空闲带宽和每份待上传数据的大小,分别计算所述k个终端上传其中一份待上传数据的时长,并选取其中最大时长作为等待时长T;所述分别请求所述k个终端向控制器上传其中一份待上传数据,具体包括:分别向所述k个终端发送携带有每份待上传数据和等待时长T的协助上传数据请求,以使所述k个终端向控制器上传分配到的那份待上传数据,并在等待时长T到达时停止上传;接收所述k个终端返回的协助上传数据响应;在接收所述k个终端返回的协助上传数据响应之后,所述方法还包括:获取协助上传数据响应中携带的上传状态标识,并根据上传状态标识判断待上传数据是否全部上传,若未全部上传,则根据上传状态标识确定重传数据;向控制器发送携带有待重传数据大小的数据上传请求,以使控制器根据待重传数据大小确定用于协助上传的终端的数量m,m>l,并确定所述m个用于协助上传的终端。9.如权利要求8所述的方法,其特征在于,在获取协助上传数据响应中携带的上传状态标识之后,所述方法还包括:根据上传状态标识向控制器发送携带有成功上传数据的终端的终端标识和本设备的终端标识的积分支付请求。10.如权利要求7-9任一项所述的方法,其特征在于,所述方法还包括:周期向带宽检测装置上报空闲带宽;和/或,周期向计费装置上报协助上传数据单位流量的积分报价P。11.一种控制器,其特征在于,包括:接收模块、第一处理模块和发送模块,接收模块用于,接收终端发送的携带有待上传数据大小D的数据上传请求;以及,接收发起数据上传请求的终端和所述k个终端上传的各份待上传数据;第一处理模块用于,根据待上传数据大小D确定协助上传的终端的数量k,k>l,并确定k个用于协助上传的终端;以及指示发送模块向发起数据上传请求的终端返回携带有所述k个终端的终端标识和地址的数据上传响应,以使发起数据上传请求的终端将待上传数据均分为(k+Ι)份,并分别请求所述k个终端向控制器上传其中一份待上传数据。12.如权利要求11所述的控制器,其特征在于,所述第一处理模块具体用于,获取各终端的积分信息和/或除发起数据上传请求的终端之外的其他终端的空闲带宽,并根据各终端的积分信息和/或除发起数据上传请求的终端之外的其他终端的空闲带宽,确定k个用于协助上传的终端。13.如权利要求12所述的控制器,其特征在于,各终端的积分信息包括:发起数据上传请求的终端能够提供的支付积分B,所述支付积分B携带于所述数据上传请求中;所述控制器还包括第二处理模块,第二处理模块用于,获取所述数据上传请求中携带的支付积分B,并向计费装置获取发起数据上传请求的终端的积分余额;以及,将发起数据上传请求的终端的积分余额与支付积分B相比较;所述第一处理模块具体用于,当发起数据上传请求的终端的积分余额大于或等于支付积分B时,根据各终端的积分信息和除发起数据上传请求的终端之外的其他终端的空闲带宽,或者,根据各终端的积分信息,确定k个用于协助上传的终端。14.如权利要求13所述的控制器,其特征在于,各终端的积分信息还包括所述其他终端协助上传数据单位流量的积分报价P;所述第一处理模块具体用于,向计费装置获取其他终端协助上传数据单位流量的积分报价P,并确定P小于或等于奖励积分B/k的终端及P小于或等于B/k的终端的数量N;将N与k相比较,当N=Mt,将所述P小于或等于B/k的终端作为用于协助上传的终端;当N>k时,向带宽检测装置获取所述P小于或等于B/k的N个终端的空闲带宽,将所述N个终端根据空闲带宽由大到小排序,并在该排序队列中选取前k个终端作为用于协助上传的终端。15.如权利要求14所述的控制器,其特征在于,所述接收模块还用于,接收发起数据上传请求的终端发送的积分支付请求,所述积分支付请求中携带有成功上传数据的终端的终端标识和所述发起数据上传请求的终端的终端标识;其中,所述积分支付请求是发起数据上传请求的终端在接收到所述k个终端返回的协助上传数据响应之后发送的;所述第一处理模块还用于,指示所述发送模块向计费装置发送携带有支付积分B、奖励积分B/k、成功上传数据的终端的终端标识和所述发起数据上传请求的终端的终端标识的积分支付请求,以使计费装置扣除发起数据上传请求的终端的B个积分,并向成功上传数据的终端支付B/k个积分。16.如权利要求11-15任一项所述的控制器,其特征在于,所述发送模块发送的数据上传响应中还携带有所述k个终端的空闲带宽,以使发起数据上传请求的终端根据待上传数据和所述k个终端的空闲带宽确定等待时长T。17.一种终端,其特征在于,包括:发送模块、接收模块、数据处理模块,发送模块用于,向控制器发送携带有待上传数据大小D的数据上传请求,以使控制器根据待上传数据大小D确定用于协助上传的终端的数量k以及k个用于协助上传的终端,k>l;接收模块用于,接收控制器返回的数据上传响应;数据处理模块用于,获取数据上传响应中携带的k个终端的终端标识和地址,将待上传数据均分为(k+Ι)份,并指示所述发送模块分别请求所述k个终端向控制器上传其中一份待上传数据;以及,指示发送模块向控制器上传本设备的那份待上传数据。18.如权利要求17所述的终端,其特征在于,还包括等待时长计算模块,等待时长计算模块用于,获取数据上传响应中携带的所述k个终端的空闲带宽;根据所述k个终端的空闲带宽和每份待上传数据的大小,分别计算所述k个终端上传其中一份待上传数据的时长,并选取其中最大时长作为等待时长T;所述数据处理模块具体用于,指示所述发送模块分别向所述k个终端发送携带有每份待上传数据和等待时长T的协助上传数据请求,以使所述k个终端向控制器上传分配到的那份待上传数据,并在等待时长T到达时停止上传;接收模块还用于,接收所述k个终端返回的协助上传数据响应;所述数据处理模块还用于,获取协助上传数据响应中携带的上传状态标识,并根据上传状态标识判断待上传数据是否全部上传,若未全部上传,则根据上传状态标识确定重传数据;以及,指示所述发送模块向控制器发送携带有待重传数据大小的数据上传请求,以使控制器根据待重传数据大小确定用于协助上传的终端的数量m,m>l,并确定所述m个用于协助上传的终端。19.如权利要求18所述的终端,其特征在于,所述数据处理模块还用于,在获取协助上传数据响应中携带的上传状态标识之后,根据上传状态标识指示所述发送模块向控制器发送携带有成功上传数据的终端的终端标识和本设备的终端标识的积分支付请求。20.如权利要求17-19任一项所述的终端,其特征在于,所述发送模块还用于,周期向带宽检测装置上报空闲带宽;和/或,周期向计费装置上报协助上传数据单位流量的积分报价P。【文档编号】H04L29/08GK105827695SQ201610140457【公开日】2016年8月3日【申请日】2016年3月11日【发明人】雷磊,王志军,房秉毅【申请人】中国联合网络通信集团有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1