一种传输进度更新方法、装置、设备和可读存储介质与流程
未命名
10-21
阅读:63
评论:0
1.本发明涉及数据传输技术领域,特别涉及一种传输进度更新方法、装置、设备和可读存储介质。
背景技术:
2.现在的终端系统之中,为方便用户对传输进度的查看,在涉及到各种数据传输时会展示相应的进度条,动态变化的进度条能够使用户对传输进度进行更加直观的了解,满足了用户对传输进度的观测需求。现有的进度条大都为根据网络环境测算出的虚拟进度条,这种虚拟的进度条和实际的传输进度相割裂,导致和真实的传输进度之间存在较大的误差,并不能体现真实的传输进度。
技术实现要素:
3.本发明提供了一种传输进度更新方法、装置、设备和可读存储介质,可以有效减小虚拟进度和真实进度之间的误差,体现更加真实的传输进度。
4.为实现上述目的,本发明提供如下技术方案:
5.根据本发明具体实施方式提供的一种传输进度更新方法,包括:
6.响应于数据传输请求,获取接收端当前的网络环境数据;
7.基于所述数据传输请求对应的数据传输内容和所述网络环境数据,得到第一传输总时长;
8.基于所述第一传输总时长、所述接收端当前的网络占用比例以及发送端的最大传输速率,得到第二传输总时长;
9.将所述第二传输总时长均分为预设数量的区间段,在每个所述区间段的终点时刻将所述接收端的虚拟进度值和所述发送端的实际进度值进行比较;
10.基于比较结果对所述虚拟进度值的变化速率进行调整,以使至少在相邻的下一区间段结束前,所述虚拟进度值和所述实际进度值相同。
11.进一步地,所述基于比较结果对所述虚拟进度值的变化速率进行调整,以使至少在相邻的下一区间段结束前,所述虚拟进度值和所述实际进度值相同,包括:
12.若所述虚拟进度值小于所述实际进度值,则在所述相邻的下一区间段内调高所述虚拟进度值的变化速率,以使在所述相邻的下一区间段的终点时刻所述虚拟进度值和所述实际进度值相同。
13.进一步地,所述基于比较结果对所述虚拟进度值的变化速率进行调整,以使至少在相邻的下一区间段结束前,所述虚拟进度值和所述实际进度值相同,包括:
14.若所述虚拟进度值大于所述实际进度值,则暂停所述虚拟进度值的更新,直至所述实际进度值和所述虚拟进度值相同后启动所述虚拟进度值的更新。
15.进一步地,在暂停所述虚拟进度值的更新后,还包括:
16.基于所述虚拟进度值和所述实际进度值的比值,降低所述虚拟进度值的变化速
率,并在所述实际进度值和所述虚拟进度值相同后以降低后的变化速率对所述虚拟进度值更新。
17.进一步地,所述网络环境数据包括:当前的网络类型以及相应的网络传输速率,所述基于所述数据传输请求对应的数据传输内容和所述网络环境数据,得到第一传输总时长,包括:
18.基于所述数据传输内容的数据包的大小以及所述网络传输速率,得到所述第一传输总时长。
19.进一步地,所述基于所述第一传输总时长、所述接收端当前的网络占用比例以及发送端的最大传输速率,得到第二传输总时长,包括:基于
20.t=n
×
i/p
21.得到所述第二传输总时长,t为所述第二传输总时长,n所述第一传输总时长,i为所述发送端的最大传输速率,p为根据所述当前的网络占用比例得到的所述数据传输内容能获得的最大传输速率。
22.进一步地,所述数据传输内容包括:页面打开内容、文件下载和数据提交。
23.根据本发明具体实施方式提供的一种传输进度更新装置,包括:
24.环境数据获取模块,用于响应于数据传输请求,获取接收端当前的网络环境数据;
25.初步时长确定模块,用于基于所述数据传输请求对应的数据传输内容和所述网络环境数据,得到第一传输总时长;
26.最终时长确定模块,用于基于所述第一传输总时长、所述接收端当前的网络占用比例以及发送端的最大传输速率,得到第二传输总时长;
27.进度值比较模块,用于将所述第二传输总时长均分为预设数量的区间段,在每个所述区间段的终点时刻将所述接收端的虚拟进度值和所述发送端的实际进度值进行比较;以及
28.进度值调整模块,用于基于比较结果对所述虚拟进度值的变化速率进行调整,以使至少在相邻的下一区间段结束前,所述虚拟进度值和所述实际进度值相同。
29.根据本发明具体实施方式提供的一种设备,包括:存储器和处理器;
30.所述存储器,用于存储程序;
31.所述处理器,用于执行所述程序,实现如上所述的传输进度更新方法的各个步骤。
32.根据本发明具体实施方式提供的一种可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时,实现如上所述的传输进度更新方法的各个步骤。
33.由以上技术方案可以看出,本发明中公开了一种传输进度更新方法,可以在需要进行数据的传输时先根据需要传输的内容以及接收端当前的网络环境,确定初步的需要传输的第一传输总时长。然后再综合根据第一传输总时长、发送端能够对传输内容匹配的最大传输速率以及接收端根据网络带宽占用比例能够提供的最大的传输速率,得到该传输内容的最为真实的传输时长。以区间段调整作为虚拟进度值和真实进度值比较和调整的最小单位,在每个区间段内进行虚拟进度值和发送端的实际进度值进行比较,并根据比较结果对接收端上的虚拟进度值进行调整,使其能够在整体上和实际进度值保持一致,从而提高了虚拟进度值和实际进度值的贴合程度,有效缩小虚拟进度和真实进度之间的误差,体现更加真实的传输进度。
附图说明
34.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
35.图1为本发明实施例提供的传输进度更新方法的流程图;
36.图2为本发明实施例提供的传输进度更新装置的结构图;
37.图3为本发明实施例提供的设备的结构图。
具体实施方式
38.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
39.本发明所提供的传输进度更新方法,可应用在具有数据传输进度展示需求的终端、服务器等设备系统中,在进行数据缓冲、文件下载、数据上传等具有进度条展示的应用场景中,参照图1所示该传输进度更新方法,可包括以下步骤:
40.101、响应于数据传输请求,获取接收端当前的网络环境数据。
41.在用户使用手机、计算机、平板电脑等智能终端设备进行页面打开、文件下载、数据提交等需要终端设备向云端、服务器等发送方进行数据传输的请求后,可首先对终端设备的网络环境进行检测,获得终端当前所处的环境,因为数据的传输时间取决于网络的传输速度,如4g、5g、wifi等网络环境,其传输速度是不同的。在具体进行网络环境相关数据的确定时可从终端设备中直接获取相关的板块内容即可,因为终端设备可以连接网络,也就具备网络类型和传输速度等参数信息的识别能力,可基于此获取终端设备的网络环境数据。
42.102、基于数据传输请求对应的数据传输内容和网络环境数据,得到第一传输总时长。
43.在确定出终端设备的网络环境数据后,再根据终端发出的数据传输请求对应内容的大小,在不考虑发送端以及接收端的其他限制条件的情况下,可以首先简单的确定终端所请求内容的所需要的传输时长。
44.103、基于第一传输总时长、接收端当前的网络占用比例以及发送端的最大传输速率,得到第二传输总时长。
45.考虑到接收端和发送端真实的网络占用情况,需要结合发送端和接收端的其他网络情况对第一传输总时长进行进一步地修正,以得到更加精确的传输时长,这里可根据以下公式进行更加精准的传输时长的预测:
46.t=n
×
i/p
47.其中,t为第二传输总时长,n第一传输总时长,i为发送端的最大传输速率,p为根据当前的网络占用比例得到的数据传输内容能获得的最大传输速率。
48.之所以这样进行传输总时长更加精准的预测统计,是因为在真实的数据传输过程
中,传输时长是收到接收端和发送端的相应设备占用情况的限制的,其中影响最大的就是接收端根据当前的网络占用比例所能确定的当前能提供的进行数据接收的最大传输速率,以及发送端能够配置的最大的数据的传输速率。通过上式的换算即可得到更加真实的传输总时长。
49.可以理解的是,本领域技术人员还可采用其他的换算方式进行传输总时长的预测,在此不做限制。
50.104、将第二传输总时长均分为预设数量的区间段,在每个区间段的终点时刻将接收端的虚拟进度值和发送端的实际进度值进行比较。
51.进度条的进度是随着传输的进行而变化的,为使通常使用的虚拟进度条能够更加真实的反映实际的传输进度。可将上述步骤103所得到的传输总时长平均划分为等长的区间段,在每个区间段的终点处将接收端的虚拟进度值与发送端的统计的实际进度值进行比较,对进度条的进度进行统计和识别。其中虚拟进度值和实际进度值可采用先触发端主动提醒的方式进行,如在各自到达25%、50%、75%、100%时,接收端的虚拟进度条或者发送端的实际数据传输进度哪一个先到达上述节点会主动给对方发送一个进度提醒,进而使对方能够知晓当前的进度。
52.105、基于比较结果对虚拟进度值的变化速率进行调整,以使至少在相邻的下一区间段结束前,虚拟进度值和实际进度值相同。
53.当虚拟进度值和实际进度值之间存在较大的偏差时,会对接收端的虚拟进度条的变化的速度进行调整,使其能够在下一个区间段内使虚拟进度条的进度和实际进度保持一致。具体的,若虚拟进度值小于实际进度值时,则在相邻的下一区间段内调高虚拟进度值的变化速率,以使在相邻的下一区间段的终点时刻虚拟进度值和实际进度值相同。如在第一个区间段结束后实际进度值为50%,而虚拟进度值为42%,根据等分获得的由50%到75%的区间段内会调高虚拟进度值的速度,并在区间段的最后将虚拟进度调整至75%。其中虚拟进度值速度的调整可根据实际进度值和虚拟进度值的比值加快虚拟进度值的进度。当然还可采用其他的进度调整方式对虚拟进度值进行调整,在此不做限制。
54.当虚拟进度值大于实际进度值时,则可直接暂停虚拟进度值的更新,直至实际进度值和虚拟进度值相同后启动虚拟进度值的更新。
55.该传输进度更新方法相较于纯虚拟的进度条可以反应更加的真实的数据传输进度,有效缩小虚拟进度和真实进度之间的误差。
56.在本发明的一些具体实施例中,考虑到虚拟进度值和实际进度值一致性保持的问题,在步骤105中的当虚拟进度值大于实际进度值时暂停虚拟进度值的更新后,还可以包括以下调整过程:
57.基于虚拟进度值和实际进度值的比值,降低虚拟进度值的变化速率,并在实际进度值和虚拟进度值相同后以降低后的变化速率对虚拟进度值更新。如实际进度值:虚拟进度值的比值为m,使用虚拟进度值的更新速度除以m,得到最新的进度进行虚拟进度值的更新即可。
58.在本发明的另一些具体实施例中,步骤102中得到的第一传输总时长的确定过程可具体包括:
59.基于数据传输内容的数据包的大小以及网络传输速率,得到第一传输总时长。如
数据包大小为2gb,利用10m带宽的以太网传输,10m除以8得到1.25m,理论的下载速度可以达到每秒1.25m。以一分钟60秒算,大约需要2000秒,即需要的总时长在半小时左右。
60.基于同样的设计思路参照图2所示,本发明的实施例还提供了一种传输进度更新装置,该装置在运行时可实现上述传输进度更新方法的各个步骤,该装置可以包括:
61.环境数据获取模块201,用于响应于数据传输请求,获取接收端当前的网络环境数据。
62.初步时长确定模块202,用于基于数据传输请求对应的数据传输内容和网络环境数据,得到第一传输总时长。
63.最终时长确定模块203,用于基于第一传输总时长、接收端当前的网络占用比例以及发送端的最大传输速率,得到第二传输总时长。
64.进度值比较模块204,用于将第二传输总时长均分为预设数量的区间段,在每个区间段的终点时刻将接收端的虚拟进度值和发送端的实际进度值进行比较。以及
65.进度值调整模块205,用于基于比较结果对虚拟进度值的变化速率进行调整,以使至少在相邻的下一区间段结束前,虚拟进度值和实际进度值相同。
66.进一步地,进度值调整模块205具体用于:若虚拟进度值小于实际进度值,则在相邻的下一区间段内调高虚拟进度值的变化速率,以使在相邻的下一区间段的终点时刻虚拟进度值和实际进度值相同。
67.进一步地,进度值调整模块205具体用于:若虚拟进度值大于实际进度值,则暂停虚拟进度值的更新,直至实际进度值和虚拟进度值相同后启动虚拟进度值的更新。
68.进一步地,进度值调整模块205还具体用于:基于虚拟进度值和实际进度值的比值,降低虚拟进度值的变化速率,并在实际进度值和虚拟进度值相同后以降低后的变化速率对虚拟进度值更新。
69.进一步地,初步时长确定模块202具体用于:基于数据传输内容的数据包的大小以及网络传输速率,得到第一传输总时长。
70.进一步地,最终时长确定模块203具体用于:基于
71.t=n
×
i/p
72.得到所述第二传输总时长,t为第二传输总时长,n第一传输总时长,i为发送端的最大传输速率,p为根据当前的网络占用比例得到的数据传输内容能获得的最大传输速率。
73.进一步地,数据传输内容包括:页面打开内容、文件下载和数据提交。
74.该传输进度更新装置具有和上述传输进度更新方法相同的有益效果,其具体实现方式可参照上述传输进度更新方法的实施例,在此不再赘述。
75.参照图3所示,本发明的实施例还提供了一种设备,可以包括:存储器301和处理器302。
76.存储器301,用于存储程序。
77.处理器302,用于执行该程序,实现如上实施例所述的传输进度更新方法的各个步骤。
78.本发明的实施例还提供了一种可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时,实现如上实施例所述的传输进度更新方法的各个步骤。
79.需要说明的是,本发明提供的传输进度更新方法、装置、设备和可读存储介质可用
于大数据领域或金融领域。上述仅为示例,并不对本发明提供的传输进度更新方法、装置、设备和可读存储介质的应用领域进行限定。
80.对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
81.需要说明的是,本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。对于装置类实施例而言,由于其与方法实施例基本相似,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
82.本发明各实施例方法中的步骤可以根据实际需要进行顺序调整、合并和删减,各实施例中记载的技术特征可以进行替换或者组合。
83.本发明各实施例种装置及终端中的模块和子模块可以根据实际需要进行合并、划分和删减。
84.本发明所提供的几个实施例中,应该理解到,所揭露的终端,装置和方法,可以通过其它的方式实现。例如,以上所描述的终端实施例仅仅是示意性的,例如,模块或子模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个子模块或模块可以结合或者可以集成到另一个模块,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。
85.作为分离部件说明的模块或子模块可以是或者也可以不是物理上分开的,作为模块或子模块的部件可以是或者也可以不是物理模块或子模块,即可以位于一个地方,或者也可以分布到多个网络模块或子模块上。可以根据实际的需要选择其中的部分或者全部模块或子模块来实现本实施例方案的目的。
86.另外,在本发明各个实施例中的各功能模块或子模块可以集成在一个处理模块中,也可以是各个模块或子模块单独物理存在,也可以两个或两个以上模块或子模块集成在一个模块中。上述集成的模块或子模块既可以采用硬件的形式实现,也可以采用软件功能模块或子模块的形式实现。
87.专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
88.结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件单元,或者二者的结合来实施。软件单元可以置于随机存储器(ram)、内存、只读存储器(rom)、电可编程rom、电可擦除可编程rom、寄存器、硬盘、可移动磁盘、cd-rom、或技术领域内所公知的任意其它形式的存储介质中。
89.对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。
对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
技术特征:
1.一种传输进度更新方法,其特征在于,包括:响应于数据传输请求,获取接收端当前的网络环境数据;基于所述数据传输请求对应的数据传输内容和所述网络环境数据,得到第一传输总时长;基于所述第一传输总时长、所述接收端当前的网络占用比例以及发送端的最大传输速率,得到第二传输总时长;将所述第二传输总时长均分为预设数量的区间段,在每个所述区间段的终点时刻将所述接收端的虚拟进度值和所述发送端的实际进度值进行比较;基于比较结果对所述虚拟进度值的变化速率进行调整,以使至少在相邻的下一区间段结束前,所述虚拟进度值和所述实际进度值相同。2.根据权利要求1所述的方法,其特征在于,所述基于比较结果对所述虚拟进度值的变化速率进行调整,以使至少在相邻的下一区间段结束前,所述虚拟进度值和所述实际进度值相同,包括:若所述虚拟进度值小于所述实际进度值,则在所述相邻的下一区间段内调高所述虚拟进度值的变化速率,以使在所述相邻的下一区间段的终点时刻所述虚拟进度值和所述实际进度值相同。3.根据权利要求1所述的方法,其特征在于,所述基于比较结果对所述虚拟进度值的变化速率进行调整,以使至少在相邻的下一区间段结束前,所述虚拟进度值和所述实际进度值相同,包括:若所述虚拟进度值大于所述实际进度值,则暂停所述虚拟进度值的更新,直至所述实际进度值和所述虚拟进度值相同后启动所述虚拟进度值的更新。4.根据权利要求3所述的方法,其特征在于,在暂停所述虚拟进度值的更新后,还包括:基于所述虚拟进度值和所述实际进度值的比值,降低所述虚拟进度值的变化速率,并在所述实际进度值和所述虚拟进度值相同后以降低后的变化速率对所述虚拟进度值更新。5.根据权利要求1所述的方法,其特征在于,所述网络环境数据包括:当前的网络类型以及相应的网络传输速率,所述基于所述数据传输请求对应的数据传输内容和所述网络环境数据,得到第一传输总时长,包括:基于所述数据传输内容的数据包的大小以及所述网络传输速率,得到所述第一传输总时长。6.根据权利要求1所述的方法,其特征在于,所述基于所述第一传输总时长、所述接收端当前的网络占用比例以及发送端的最大传输速率,得到第二传输总时长,包括:基于t=n
×
i/p得到所述第二传输总时长,t为所述第二传输总时长,n所述第一传输总时长,i为所述发送端的最大传输速率,p为根据所述当前的网络占用比例得到的所述数据传输内容能获得的最大传输速率。7.根据权利要求1所述的方法,其特征在于,所述数据传输内容包括:页面打开内容、文件下载和数据提交。8.一种传输进度更新装置,其特征在于,包括:环境数据获取模块,用于响应于数据传输请求,获取接收端当前的网络环境数据;
初步时长确定模块,用于基于所述数据传输请求对应的数据传输内容和所述网络环境数据,得到第一传输总时长;最终时长确定模块,用于基于所述第一传输总时长、所述接收端当前的网络占用比例以及发送端的最大传输速率,得到第二传输总时长;进度值比较模块,用于将所述第二传输总时长均分为预设数量的区间段,在每个所述区间段的终点时刻将所述接收端的虚拟进度值和所述发送端的实际进度值进行比较;以及进度值调整模块,用于基于比较结果对所述虚拟进度值的变化速率进行调整,以使至少在相邻的下一区间段结束前,所述虚拟进度值和所述实际进度值相同。9.一种设备,其特征在于,包括:存储器和处理器;所述存储器,用于存储程序;所述处理器,用于执行所述程序,实现如权利要求1至7中任一项所述的传输进度更新方法的各个步骤。10.一种可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,实现如权利要求1至7中任一项所述的传输进度更新方法的各个步骤。
技术总结
本发明涉及一种传输进度更新方法、装置、设备和可读存储介质可应用于大数据领域或金融领域,可以在需要进行数据的传输时先根据需要传输的内容以及接收端当前的网络环境,确定初步的需要传输的第一传输总时长。然后再综合根据第一传输总时长、发送端能够对传输内容匹配的最大传输速率以及接收端根据网络带宽占用比例能够提供的最大的传输速率,得到该传输内容的最为真实的传输时长。根据每个区间段内进行虚拟进度值和发送端的实际进度值的比较结果,对接收端上的虚拟进度值进行调整,使其能够在整体上和实际进度值保持一致,从而提高了虚拟进度值和实际进度值的贴合程度,有效缩小虚拟进度和真实进度之间的误差,体现更加真实的传输进度。实的传输进度。实的传输进度。
技术研发人员:吕明明
受保护的技术使用者:中国银行股份有限公司
技术研发日:2023.08.24
技术公布日:2023/10/19
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
航空商城 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/