用于对设备的上传大小进行控制的方法和装置与流程

文档序号:12613635阅读:172来源:国知局
用于对设备的上传大小进行控制的方法和装置与流程
本公开涉及一种用于适应性地控制作为设备的上传单位的块的大小的方法和装置。
背景技术
:互联网已经从由人创建和消费信息的以人为中心的连接网络演变为物联网(IoT)网络,在物联网(IoT)网络中诸如事物的分布式的组件可以交换和处理信息。对于万物互联(IoE)技术,通过连接到云服务器等的大数据处理技术是与IoT技术相结合的一个示例。为了实现IoT,可能需要诸如感测技术,有线/无线通信和网络基础设施,服务接口技术和安全技术的技术元件。因此,近年来,已经研究了用于诸如传感器网络,机器对机器(M2M)和机器类型通信(MTC)等的事物之间的连接的技术。在IoT环境中,可以提供智能互联网技术(IT)服务,其中所连接的事物可以收集和分析在其中生成的数据,以创建对人类生活的新价值。通过现有IT技术与各个行业的融合,IoT可以应用于智能家居、智能建筑、智能城市、智能汽车或联网汽车、智能电网、医疗保健、智能家电和高科技医疗服务等领域。随着IoT的实现,用户针对每个目的应存储或存档的数据量激增。由于这个原因,通常将数据存储在由托管公司管理和拥有的云储存器中,而不是将数据存储在具有有限大小或有限容量的硬件存储器中。要上传到云储存器的数据通常可以被划分为块单元并且被上传。当设备将其期望的数据划分为块单元并且以块为单位上传所划分的数据时,可能发生诸如网络断开的传输错误。图1A和图1B是示出根据现有技术的网络断开的示例的示图。在图1A中,假设当用户的设备120a在例如咖啡馆中(在所述咖啡馆中安装有带Wi-Fi的AP110)的接入点(AP)110的服务区域112内将数据以块为单位上传到云储存器时,已经发生了用户移动130。在这种情况下,随着设备120b离开服务区域112,设备120b可以连接到提供基于长期演进(LTE)的无线通信的基站(或演进节点B(eNB))100。此时,在切换过程中可能发生网络断开,其中对于设备120b,其与Wi-Fi的连接断开并且设备120b连接到LTE。参考1B,如果当发生用户移动160时,连接到提供LTE的基站100的设备150b位于在其中安装了提供Wi-Fi的AP140的家庭中的服务区域142中,则在切换过程中可能发生网络断开,其中对于设备150a,其与LTE的连接断开,并且设备150a连接到AP140,这取决于用户的选择。在设备执行基于块的上传的情况下,由于在发生上传的传输错误之前设备已传送的块被存储在云储存器中,所以可以从其中发生了错误的数据块开始来上传数据,而不需要从起始重新传送正传送的数据。因此,基于块的上传对大型文件上传是有效的。由于块的大小较大,块的传输时间较长,所以增加了块的传送错误将发生的概率。在这种情况下,如果在块的传输期间发生错误,则应当重传块,这导致了上传速度的降低并且导致了应当重传的数据量的增加。另一方面,在块的大小是小的情况下,由于需要从提供云储存器的服务器接收针对所接收的块的响应(或确认),以便传送下一个块,可能产生设备对响应进行等待的时间。因此,可能产生增加的等待时间,导致上传速度的降低。此外,提供云储存器的每个服务器可以提供其自己的唯一的上传相关策略。例如,下面的表1示出了用于云储存器的与上传相关的策略的示例。表1如表1所示,用于云储存器的现有上传相关策略使用大小固定且相对小的块,以便最小化在网络断开期间应当重传的数据量。如上所述,由于根据块大小存在优点和缺点,因此需要一种方法来控制可变的块大小,其可以在上传到云储存器期间提高传输速率。上述信息仅作为背景信息呈现以帮助理解本公开。关于上述内容中的任何一个是否可以作为关于本公开的现有技术,没有做出决定,也没有做出声明。技术实现要素:本公开的各方面是为了解决至少上述问题和/或缺点,并且提供至少下面描述的优点。因此,本公开的一个方面是提供一种用于使用用户设备,在上传到云储存器期间适应性地控制块大小的方法和装置。根据本公开的一个方面,一种用于控制由设备上传到服务器的数据大小的方法,所述方法包括:基于服务器的策略来确定是否要改变数据大小;如果确定要改变数据大小,则确定待上传的数据的初始传输大小,并且将与所确定的初始传输大小相对应的部分数据上传到服务器;在上传历史中更新该部分数据的上传结果,所述上传历史存储在存储器中;以及基于在一时间段期间来自服务器的对该部分数据的接收结果来确定数据的下一个传输大小,所述时间段是根据所述策略获得的。根据本公开的另一方面,一种用于控制待上传到服务器的数据大小的设备,所述设备包括:控制器,被配置为:基于服务器的策略来确定是否要改变数据大小,确定要改变数据大小,确定待上传的数据的初始传输大小,并且将与所确定的初始传输大小相对应的部分数据上传到服务器,在上传历史中更新该部分数据的上传结果,所述上传历史存储在存储器中,以及基于在一时间段期间来自服务器的对该部分数据的接收结果来确定数据的下一个传输大小,所述时间段是根据所述策略获得的;以及收发器,其被配置为上传与所确定的初始传输大小相对应的该部分数据。从以下结合附图公开本公开的各种实施例的详细描述中,本公开的其他方面、优点和显著特征对于本领域技术人员将变得显而易见。在进行下面的具体实施方式之前,阐述贯穿本专利文献使用的某些词语和短语的定义是有利的。术语“包括(include)”和“包括(comprise)”及其派生词意味着包括但不限于,术语“或”是包含性的,意味着和/或,短语“与...相关联”和“与其相关联”及其派生词可意指包括、被包括在内,与…互连,包含,被包含在内,连接到或与…连接,联接到或与…联接,与…通信,与…协作,交错,并置,接近,绑定到或与…绑定,具有,具有…的属性等,并且术语“控制器”是指控制至少一个操作的任何设备、系统或其一部分,这样的设备可以以硬件、固件或软件或其至少两者的某种组合来实现。应当注意,与任何特定控制器相关联的功能可以是集中式的或分布式的,无论是本地还是远程的。在整个本专利文档中提供了某些词语和短语的定义,本领域普通技术人员应当理解,在许多情况下(如果不是大多数情况),这样的定义适用于这样定义的词语和短语的先前以及将来的用途。附图说明根据结合附图的以下描述,本公开的某些实施例的上述和其他方面、特征和优点将更加显而易见,其中:图1A和图1B是示出根据现有技术的网络断开的示例的示图;图2是示出根据本公开实施例的在上传到云储存器的情况下的上传传输速率随时间的示例的图表;图3A和图3B是示出根据本公开各种实施例的在图2的实验环境中改变块大小的情况下的上传传输速率随时间的示例的图表;图4A和图4B是示出根据本公开各种实施例的移动终端的操作的示例的流程图;图5是示出根据本公开实施例的确定初始块的大小的操作的示例的流程图;图6是示出根据本公开实施例的考虑网络断开,由移动终端来确定下一个块的大小的操作的示例的流程图;图7A和图7B是示出根据本公开各种实施例的在先前块的成功传输之后确定下一个块的大小的操作的示例的流程图;图8是示出根据本公开另一实施例的用于基于多会话的上传的操作的示例的流程图;以及图9是根据本公开实施例的移动终端的框图。在所有附图中,相同的附图标记将被理解为指代相同的部件、组件和结构。具体实施方式参考附图提供以下描述以帮助全面理解由权利要求及其等同物限定的本公开的各种实施例。其包括各种特定细节以帮助理解,但这些细节仅被视为示例性的。因此,本领域普通技术人员将认识到,在不脱离本公开的范围和精神的情况下,可以对本文所述的各种实施例进行各种改变和修改。此外,为了清楚和简明,可以省略对公知功能和结构的描述。在以下描述和权利要求中使用的术语和词语不限于书面意义,而是仅由发明人使用以使得能够清楚和一致地理解本公开。因此,对本领域技术人员显而易见的是,提供本公开的各种实施例的以下描述仅用于说明目的,而不是为了限制由所附权利要求及其等同物限定的本公开。可以对本公开进行各种改变,并且本公开可以具有多种实施例。结合附图示出和描述了本公开的一些实施例。然而,应当理解,本公开不限于各种实施例,并且所有改变和/或其等同物或替代物也属于本公开的范围。应当理解,除非上下文另有明确说明,单数形式“一”、“一个”和“该”包括复数指代物。因此,例如,对“一个部件表面”的引用包括对一个或多个这样的表面的引用。如本文所使用的序数,例如“第一”、“第二”等,可以修饰各种实施例的各种组件,但不限制这些组件。这些术语仅用于将一个部件与另一个部件区分开。例如,根据本公开的各种实施例,在不脱离本公开的范围的情况下,第一组件可以表示为第二组件,反之亦然。术语“和/或”包括多个列出的相关项目的组合或多个列出的相关项目中的任何一个。如本文所使用的术语“包括("comprise)”和/或“包括(comprising)”指定所公开的功能、操作或组件的存在,但不排除一个或多个其他功能、操作或组件的存在或添加。还将理解,当在本说明书中使用时,术语“包括”和/或“具有”指定所述特征、整体、步骤、操作、元件和/或组件的存在,但不排除存在或添加一个或多个其它特征、整体、步骤、操作、元件、组件和/或其组合。除非另有定义,否则本文所使用的包括技术和科学术语的所有术语具有与本公开的实施例所属领域的普通技术人员通常理解的相同的含义。还应当理解,诸如在通常使用的字典中定义的那些术语应当被解释为具有与它们在相关技术的上下文中的含义一致的含义,并且不会被解释为理想化或过度形式化的含义,除非在此明确地定义。根据本公开的各种实施例,电子设备可以包括通信功能。例如,电子设备可以是智能电话、平板个人计算机(PC)、移动电话、视频电话、电子书阅读器、台式PC、膝上型PC,上网本PC、个人数字助理(PDA)、便携式多媒体播放器(PMP)、MP3播放器、移动医疗设备、照相机或可穿戴设备(例如头戴式设备(HMD)、电子服装、电子踝环、电子项链、电子配件(附件)、电子纹身、智能手表等)中的至少一者。根据本公开的各种实施例,电子设备可以是具有通信功能的智能家电。例如,智能家电可以是电视(TV)、数字通用光盘(DVD)播放器、音频播放器、冰箱、空调、真空吸尘器、烤箱、微波炉、洗衣机、干衣机、空气净化器、机顶盒、TV盒(例如,SamsungHomeSyncTM、AppleTVTM或GoogleTVTM)、游戏控制台、电子词典、摄像机或数码相框中的至少一者。根据本公开的各种实施例,电子设备可以是医疗设备(例如,磁共振血管造影(MRA)设备、磁共振成像(MRI)设备、计算机断层摄影(CT)设备、成像设备或超声波设备)、导航设备、全球定位系统(GPS)接收器、事件数据记录器(EDR)、飞行数据记录器(FDR)、汽车信息娱乐设备、航行电子设备(例如,航海导航设备、陀螺仪或罗盘)、航空电子设备、安全设备、工业或家用机器人等中的至少一者。根据本公开的各种实施例,电子设备可以是家具或建筑物/结构的一部分、电子板、电子签名接收设备、投影仪或各种仪表(例如,用于水、电、气或无线电波的仪表)中的至少一个,其中每一个都包括通信功能。根据本公开的各种实施例,电子设备可以是上述设备的组合。此外,对于本领域技术人员显而易见的是,根据本公开的优选实施例的电子设备不限于上述设备。在下文中,根据本公开的各种实施例,执行到云储存器的上传的设备可以是例如电子设备。图2是示出根据本公开的实施例的在向云储存器进行上传的情况下随时间的上传传输速率的示例的图表。在下面的描述中,假设设备使用作为提供云存储的应用之一的OneDrive应用来访问长期演进(LTE)并上传一个100MB文件。参考图2,y轴表示瞬时速度,x轴表示上传速度。每次设备完成一个块的传输时,就开始慢启动(200、202、204和206),以便接收指示从服务器成功接收所传送的块的响应。图2示出如下模式:上传速度在对应于每个慢启动的时间急剧下降,并且如果从服务器接收到响应,则上传速度增加。换句话说,可以看出在块传输之间存在空闲时间。图3A和图3B是示出根据本公开的各种实施例的在图2的实验环境中改变块大小的情况下的上传传输速率随时间的示例的图表。参考图3A,默认块大小在实验中被设置为例如1MB,并且在这种情况下,平均速率是2.4Mbps。参考图3B,在实验中将最大块大小设置为例如60MB,并且在这种情况下,平均速率是9.98Mbps。参考图3A和图3B,可以看出,随着块大小增加,在块传输之间出现的空闲时间减小。因此,可以看出,随着块大小从1MB增加到60MB,上传速度(或上传速率)增加到4.16倍,即从2.4Mbps增加到9.98Mbps。因此,本公开的实施例提供了一种用于适应性地控制将数据上传到云储存器的设备中的块大小的方法。例如,在本公开的实施例中,可以收集设备用户的过去和当前上下文,并且基于此,可以预测网络断开的概率和上传传输速率。根据本公开的实施例的过去上下文是与设备针对每个云储存器已经上传的历史有关的参数,并且可以包括关于设备执行上传的时间和地点的信息、设备在上传期间所连接到网络的类型(例如,基站/接入点(AP)的标识符)、以及设备向其上传数据的云储存器的类型。该时间可以包括总的块传输时间、总的块传输尝试计数和总的块传输尝试计数中的上传失败计数。根据本公开的实施例的当前上下文可以包括关于设备的移动性、设备所接收的信号的强度以及当前使用的云储存器的信息。下面将更详细地描述根据本公开的实施例的过去上下文。本公开的实施例提供一种方法,其中设备可以考虑网络断开的预测概率或移动速度来确定初始块大小,并且在每个块传输期间适应性地改变块大小,从而最大化上传速度。此外,本公开的实施例提供一种方法,其中提供云储存器的服务器可以通过针对设备的上传区分用户的类别来不同地分配可调节的参数。可由服务器调节的参数可以包括从移动终端上传到云储存器的会话的数量和针对会话内的块接收的响应等待时间。通常,为了最小化云储存器设备的上传的重传情况,可以考虑与分组错误相关的参数(例如,信噪比、分组错误率等)。与此相比,在本公开的实施例中,可以考虑由设备所管理的过去和当前上下文来确定块传输速率,从而防止个人信息泄漏或在服务器改变期间发生的状况。例如,在本公开的实施例中,设备的用户可以如图4A和图4B所示的那样操作,以便基于上传到云储存器的与存储相关的过去和当前上下文来适应性地确定要上传到云储存器的块的大小。图4A和图4B是示出根据本公开的各种实施例的移动终端的操作的示例的流程图。参考图4A和图4B,在操作400中,设备(或移动终端)可以检测与到云储存器的文件上传请求相对应的用户输入。在操作402中,移动终端可以识别移动终端当前将向其上传数据的目标云储存器。在操作404中,设备可以通过检查在云储存器中提供的上传策略来确定是否需要可变地调节待上传的块的单位。在本文中,在确定是否需要可变地调节待上传的块的单位中,在例如在所识别的云储存器中提供的上传策略支持重传方案的情况下,设备可以确定需要可变地调节块的单位,在重传方案中,当在上传期间发生错误时,在发生错误的点处不可能重传数据,并且应该在发生错误的块的起始点处开始重传数据。在这种情况下,如果上传策略支持在上传期间发生错误的点可进行数据重传的重传方案,则设备可以确定不需要可变地调节块的单位。作为另一示例,假设在云储存器的上传策略中提供的最大块大小与当前要传送的数据的大小之间没有显著差异。在这种情况下,由于最大块大小的限制,当前要传送的数据的大小可以被设置为小于最大块大小。由于数据的大小不大,因此不需要以大于最大块大小的大小来传送数据。在这种情况下,设备可以确定不需要可变地调节块的单位。作为确定的结果,如果不需要可变地调节上传块的单位,则在操作420中,设备可以以在目标云储存器的上传策略中提供的块为单位上传数据。另一方面,作为确定的结果,如果需要可变地调节上传块的单位,则在操作406中,设备可以确定初始块大小。需要可变地调节上传块的单位的情况可以对应于例如如下情况:与目标云储存器的上传策略中提供的最大块大小相比,如上所述要传送的数据的大小非常大。下面将参考图5描述根据本公开的实施例的确定初始块大小的操作。此后,在操作408中,设备可以以在操作406中确定的初始块大小上传初始块。在操作410中,在初始块的传输之后,设备可以将初始块的上传历史更新为过去的上下文。在本公开的实施例中,移动终端包括用于管理和存储将在确定块大小中使用的过去和当前上下文的数据库(DB),并且在此更新用于初始块的上传历史。在这种情况下,更新的信息可以包括例如初始块的大小、对应大小的传送计数、传送初始块的地点和时间、以及数据的类型,并且已更新的信息可以被映射并存储在目标云储存器中。在操作412中,设备可以针对来自提供目标云储存器的服务器的、指示成功接收到初始块的响应而等待预定时间。预定时间可以从目标云储存器中提供的上传策略获得。如果在预定时间内没有接收到响应,则设备可以确定初始块的传输失败,并且在操作414中识别初始块的传输失败的原因。此外,设备可以根据初始块的传输失败的原因来确定下一个块的大小,并且返回到操作406。由移动终端识别初始块的传输失败的原因并且根据所识别的原因来确定下一个块的大小的操作将在下面参考图6详细描述。如果在预定时间内从服务器接收到响应,则设备可以在操作416中确定要上传到目标云储存器的数据的传输是否已经完成。作为确定的结果,如果要上传到目标云储存器的数据的传输已经完成,则设备可以结束上传操作。另一方面,作为确定的结果,如果要上传到目标云储存器的数据的传输尚未完成,则设备可以在操作418中确定下一个块的大小,并且返回到操作406。下面将参考图7A和图7B描述根据本公开的实施例的成功上传先前块,然后确定下一个块的大小的操作。参考图4A和图4B,根据图6、图7A和图7B中的各种实施例,设备可以重复以下操作:确定下一个块的大小并基于此来上传块,直到要上传到目标云储存器的数据的传输完成。图5是示出根据本公开的实施例的确定初始块的大小的操作的示例的流程图。参考图5,移动终端可以在操作500中确定在数据库中存储的过去上下文中是否存在具有可靠性的块大小。例如,如果在过去上下文中存在具有映射到目标云储存器的上传历史的块大小,则移动终端可以确定块大小的可靠性。如果块大小满足例如如下条件:诸如具有该块大小的传输计数是否大于或等于预定计数,和/或在传输期间块大小的上传速度的标准偏差是否小于或等于预定值,则可以确定块大小的可靠性是否存在。作为确定的结果,如果接受块大小的可靠性,则在操作502中,移动终端可以将从过去上下文获得的块大小确定为初始块大小。另一方面,作为确定的结果,如果由于从过去上下文获得的块大小不满足上述条件而导致可靠性不被接受,则在操作504中,移动终端可以确定在目标云储存器的上传策略中提供的默认块大小作为初始块大小。根据本公开的实施例的块大小可以通过下面的式1来计算。块大小(Mb)=传输速率(Bbps)*T(秒)….式1其中'T'表示期望在不发生网络断开的情况下稳定地传送块的最大传输时间,并且是可以根据用户的过去和当前上下文而变化的值,并且“传输速率'表示从过去上下文获得的平均上传传输速率。由于块大小由如在式1中定义的T和传输速率的乘积来确定,所以根据本公开的实施例的块大小可以被定义为最大可传送数据量,通过该最大可传送数据量,期望在不发生网络断开的情况下稳定地传送块。根据本公开的实施例的用于计算块大小的T可以通过两种方法中的任一种来计算。第一种方法可以使用如下面的表2中的过去上下文来获得T。下面的表2示出了根据本公开的实施例的存储在管理过去上下文的数据库(DB)中的信息的示例。表2参考表2,DB可以针对具有上传历史的云储存器中的每一个来映射和存储设备在上传期间已经生成的历史信息。历史信息可以包括例如网络标识符,发生上传的开始时间,总的块传输时间,总的块传输尝试计数和平均上传传输速率。如果如表2所示的过去上下文被存储在DB中,则设备可以通过将数据的总块传输时间除以总块传输尝试计数来获得平均上传传输速率。假设网络断开独立地发生并且网络断开发生计数遵循泊松过程,则网络断开发生间隙可遵循指数分布。在这种情况下,在根据本公开的实施例的第一方法中,式1中的T(秒)可以被定义为防止以概率Pth发生网络断开的最大传输时间。例如,假设Pth设置为0.9,则意味着现在发生网络断开的概率为90%。这里,Pth是由云储存器中提供的策略预先定义的值,并且该值可以改变。如果基于从DB获得的过去上下文所获得的平均块传输时间被定义为μ,则T(秒)可以通过下面的式2计算。T=μlnPth式2其中μ可以表示为如下面的等式3所示。第二方法可以使用下面的表3和表4来计算T。下面的表3和表4分别示出从DB获得的过去上下文和网络断开发生概率的示例。表3表4连接失败概率持续时间(秒)0<P≤0.1200.1<P≤0.2180.2<P≤0.3160.3<P≤0.4140.4<P≤0.5120.5<P≤0.6100.6<P≤0.780.7<P≤0.860.8<P≤0.940.9<P<12在第二方法的情况下,可以从表3中的过去上下文获得网络断开发生概率和上传传输速率。网络断开发生概率可以通过将在总的块传输尝试中的失败计数除以总的块传输尝试计数来计算。基于根据表3中过去上下文计算的网络断开发生概率,可以将在表4中公布的针对每个网络断开发生概率所映射的T值中的匹配的T值用作表格1中的T(秒)。此后,在操作506中,设备可以确定通过操作502或504所确定的初始块的大小是否小于目标云储存器的上传策略中提供的最大块大小。最大块大小对应于目标云储存器上可传送的块的最小单位。因此,作为确定的结果,如果初始块的大小不小于最大块大小,则在操作508中,因为根据上传策略设备不能将大于最大块大小的块传送到云储存器,所以移动终端可以将初始块的大小改变为最大块大小,然后进入操作510。另一方面,作为确定的结果,如果初始块的大小小于最大块大小,则移动终端可以在操作510中确定初始块的大小是否小于待上传的文件的大小。待上传的文件的大小是通过从上传目标文件的大小中排除上传量而获得的值。作为确定的结果,如果初始块大小小于待上传的文件的大小,则移动终端可以返回操作408并且上传初始块文件。另一方面,如果初始块大小大于或等于待上传的文件的大小,则在操作512,移动终端可以将初始块的大小改变为待上传的文件的大小,然后进入操作408。图6是示出根据本公开的实施例的考虑网络断开通过移动终端来确定下一个块的大小的操作的示例的流程图。参考图6,在操作600中,移动终端确定在将块上传到目标云储存器期间是否已经发生网络断开。作为确定的结果,如果发生了网络断开,则在操作602中,移动终端可以在DB中更新关于由于网络断开而导致其传送失败的块的上传历史的信息。更新的信息可以对应于关于传输失败块的信息(例如,表3中公布的信息)。另一方面,作为确定的结果,如果没有发生网络断开,则移动终端可以进入操作606。网络断开可以由于图1A和图1B中描述的切换等而发生。即使没有发生网络断开,也可能存在由于通信信道的临时情况(例如,速率的显著变化)而导致的与现有网络的连接状态变差的情况。为了确定这一点,移动终端可以在操作606中确定与现有网络的连接已经断开的时间是否大于或等于例如5秒的预定的阈值时间。如果所述时间大于或等于阈值时间,则移动终端可以进入操作604,确定断开是由于在网络之间的移动引起的网络断开。在操作604中,根据本公开的实施例,移动终端可以根据用于确定初始块的大小的方法来确定下一个块的大小。这里,由于网络断开而导致其传送失败的块的大小可以不同于待上传的文件的大小。在这种情况下,待上传的文件的大小是通过从上传目标文件的大小中排除上传量而获得的值。因此,在本公开的实施例中,根据图5中的上述初始块大小确定操作,传输失败的块的下一个块的大小可以被确定为从过去上下文或在目标云储存器的策略中提供的默认块大小获得的块大小。作为确定的结果,如果与现有网络的连接已经断开的时间小于阈值时间,则移动终端可以确定用户的干预或网络的临时错误已经发生。因此,使用因子δ来减小块大小,在操作608中,移动终端可以计算值T',值T'作为新的T值,值T'通过用先前T值乘以(1-δ)而获得。这里,δ可以被设置为取决于T值而变化的值。在操作610中,移动终端可以通过将在操作608中计算的T值乘以传输速率来获得下一个块的大小。在操作612中,移动终端可以确定下一个块的大小是否小于在提供目标云储存器的服务器的上传策略中提供的最大块大小。作为确定的结果,如果下一个块的大小不小于最大块大小,则在操作614中,因为根据上传策略设备不能将比最大块大小更大的块传送到云储存器,所以移动终端可以将下一个块的大小改变为最大块大小,然后进入操作616。作为确定的结果,如果下一个块的大小小于最大块大小,则在操作616中,移动终端可以确定下一个块的大小是否小于待上传的文件的大小。作为确定的结果,如果下一个块的大小小于待上传的文件的大小,则移动终端可以返回操作408并且上传下一个块文件。待上传的文件的大小是通过从上传目标文件的大小中排除上传量而获得的值。另一方面,作为确定的结果,如果下一个块的大小大于或等于待上传的文件的大小,则在操作618中,移动终端可以将下一个块的大小改变为待上传的文件的大小,然后进入操作408。根据本公开的实施例的块的大小可以被确定为通过将传输速率乘以T值所获得的值,如式1所描述的。由于根据移动终端的接收信号强度指示符(RSSI)值的效果反映在传输速率中,所以RSSI值可能甚至影响块的大小。换句话说,随着RSSI越高,传输速率可能越高,并且随着RSSI越低,当前传输速率可能越低。因此,根据本公开的实施例,在如图4A和图4B的操作418中成功地上传先前块之后,如果存在待传送的下一个块,则可在四种不同情况下,根据RSSI值是否减小或者移动站是否移动来计算T值。图7A和图7B是示出根据本公开的各种实施例的在先前块的成功传输之后确定下一个块的大小的操作的示例的流程图。参考图7A和图7B,移动终端可以在操作700中使用运动识别传感器来确定移动终端自身是否正在移动。作为确定的结果,如果移动终端正在移动,则移动终端可以进入操作702,并且如果移动终端没有移动,则移动终端可以进入操作708。在确定移动终端正在移动时,移动终端可以在操作702中确定RSSI是否正在减小。作为确定的结果,如果RSSI正在减小,则在操作704中,移动终端可以计算RSSI值小于或等于α的时间,并且使用该值作为T。RSSI是否正在减小例如可通过比较在预定时间单位内接收的RSSI值以确定是否连续接收到低于先前RSSI值的RSSI值达预定次数来确定。在这种情况下,α是很可能发生网络断开的RSSI值,并且可以根据移动终端目前所连接到的网络的类型(例如,Wi-Fi、3G、4G等)而变化。另一方面,作为确定的结果,如果RSSI不减小,则在操作706中,移动终端可以使用通过用先前T值乘以(1-β)而获得的T'值作为新的T值。这里,β是用于减小块的大小的因子,并且可以是用于反映由于移动终端正在移动而很可能发生网络断开的事实的值。根据本公开的实施例的β可以根据从过去上下文获得的网络断开发生概率或根据T值而变化。在确定移动终端没有移动时,移动终端可以在操作708确定RSSI是否在减小。作为确定的结果,如果RSSI正在减小,则在操作710中,移动终端可以使用先前未变的T值。如果在操作708中确定RSSI不减小,则在操作712中移动终端可以使用通过用先前T值乘以(1+γ)获得的T'值作为新的T值。这里,γ是用于增加块的大小的因子,并且可以是用于反映网络断开发生概率低的事实的值,因为RSSI不减小。γ也可以根据从过去上下文获得的网络断开发生概率或根据T值而变化。此后,在操作714中,移动终端可以在操作704至712中的条件满足的情况下基于T来计算块的大小。在执行操作716至722之后,移动终端可以返回操作408。由于操作716至722以与图6中的操作612至618相同的方式操作,因此,将省略其冗余的描述。本公开的另一实施例提供了一种用于使用至少两个或更多个会话(即,多会话)并行地上传现有的逐个块的结构的方法,使得可以尽可能多地使用服务器的资源,并且可以为每个用户类提供针对云储存器的差异化服务。对于基于多会话的并行上传,在管理用于多会话的DB方面,服务器的负担可能增加。因此,本公开的另一实施例可以仅向已经承担额外费用的用户提供基于多会话的并行上传,或者根据服务器的可用性状态提供基于多会话的并行上传。图8是示出根据本公开的另一实施例的用于基于多会话的上传的操作的示例的流程图。参考图8,如果在移动终端800中生成待上传的数据,则在操作804中,移动终端800可以向提供目标云储存器的服务器802传送包括用户的标识符、终端的状态信息和文件信息的上传相关信息,移动终端800将上传数据到目标云储存器。终端的状态信息可以包括移动终端800和服务器802之间的最大网络速率、移动终端的剩余电池电量、以及指示电池正在充电的信息。文件信息可以包括将由用户传送的数据的类型和大小。在接收到与上传相关的信息时,在操作806中,服务器802可以使用用户的标识符来检查移动终端的用户类别和服务器802的可用性的当前状态,以确定用于移动终端800的基于多会话上传的设定变量。否则,服务器802可以基于移动终端的剩余电池电量或充电状态来检查其是否能支持能够执行多会话的最小功率,并且基于此,服务器802可以确定用于移动终端800的基于多会话的上传的设置变量。设置变量可以包括指示移动终端800是否可以执行基于多会话的上传的信息,上传期间可允许的会话的数目,以及在会话内的块接收的响应等待时间。在操作808中,服务器802可以将关于设置变量的信息传送到移动终端800。在操作810中,移动终端800可以基于关于用于上传的设置变量的信息通过至少一个会话来执行上传。移动终端800可以基于图4A、图4B、图5、图6、图7A和图7B中的上述操作来确定在用于上传的每个会话中待上传的块的大小。图9是根据本公开的实施例的移动终端的框图。参考图9,移动终端900可以包括例如控制器902,收发器904、上下文DB906和块大小确定单元908。移动终端900的上述配置被示出为示例,并且根据运营商的意图或各种实施例,移动终端900的组件可以被细分为子单元,或者集成到一个单元中。根据本公开的实施例,控制器902可以执行用于确定用于移动终端900的上传的块大小的总体操作。在控制器902的控制下,收发器904可以接收从提供目标云储存器的服务器接收的传输块的接收响应,并且将待上传的数据传送到云储存器。如上所述,根据本发明的实施例,上下文DB906可以存储和更新用于确定每个目标云储存器的初始块的大小或下一个块的大小的过去或当前上下文。最后,根据本公开的实施例,在控制器902的控制下,块大小确定单元908可以确定待上传的块的大小。对于确定初始块和下一个块的大小以及考虑网络断开而确定块的大小,根据图5、图6、图7A和图7B中的操作进行确定。因此,将省略其冗余描述。此外,根据本公开的实施例,控制器902可以控制剩余组件,使得根据图8的实施例的基于多会话的并行上传可以被执行,并且在控制器902的控制下,剩余组件也可以对应于图8中的操作进行操作。如上所述,根据本公开的实施例,基于针对移动终端的用户的上传历史所生成的过去和当前上下文,通过适应性地调节待上传的块的大小,可以提高到目标云储存器的上传速度。此外,根据本公开的另一实施例,服务器可以考虑用户类别、服务器和终端的资源可用性状态以及上传文件信息来智能地将基于多会话的上传的设置变量分配给移动终端,以及将设置变量传送到移动终端,因此可以通过以尽可能低成本地有效地利用服务器的资源来提供云储存器服务。本公开的具体方面还可以被实现为计算机可读记录介质中的计算机可读代码。计算机可读记录介质可以是可以存储可由计算机系统读取的数据的任何数据存储设备。计算机可读记录介质的示例可以包括只读存储器(ROM)、随机存取存储器(RAM)、光盘只读存储器(CD-ROM)、磁带、软盘、光学数据存储装置和载波(例如通过因特网的数据传输)。计算机可读记录介质可以分布在连接到网络的计算机系统上,因此计算机可读代码可以以分布式方式存储和执行。此外,用于实现本公开的功能程序、代码和代码段可以容易地由本公开所应用的领域的程序员解释。此外,应当理解,根据本公开的实施例的装置和方法可以以硬件、软件或其组合的形式来实现。任何这样的软件可以存储在易失性或非易失性存储设备(例如,可擦除/可重写ROM)、存储器(例如,RAM、存储器芯片、存储器设备或集成电路(IC))或光学或磁性可读机器(例如,计算机)可读存储介质(例如,压缩盘(CD)、DVD、磁盘或磁带)中。根据本公开的实施例的方法可以由计算机或包括计算机或存储器的移动终端来实现,并且应当理解,存储器是机器可读存储介质的示例,所述机器可读存储介质适于存储包括实现本公开的实施例的指令的一个或多个程序。因此,本公开可以包括:包含用于实现如在说明书的任何权利要求中阐述的装置和方法的代码的程序;以及存储该程序的机器(或计算机)可读存储介质。此外,可以通过诸如通过有线/无线连接所传输的通信信号的任何介质来电传送程序,并且本公开可以适当地包括其等同物。此外,根据本公开的实施例的装置可以从通过有线或无线连接到装置的程序服务器(或程序提供装置)接收程序,并存储所接收的程序。程序服务器可以包括:存储器,其用于存储程序,该程序包括允许程序服务器执行数据上传方法并存储数据上传方法所需的信息的指令;通信单元,其用于与装置进行有线/无线通信;以及控制器,其用于自动地或在装置的请求下将程序传送到收发器。虽然已经参考本公开的各种实施例示出和描述了本公开,但是本领域技术人员将理解,在不脱离由所附权利要求及其等同物限定的本公开的精神和范围的情况下,可以在形式和细节上进行各种改变。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1