一种HTTP请求传输方法及设备技术

技术编号:28878441 阅读:26 留言:0更新日期:2021-06-15 23:14
本申请公开了一种HTTP请求传输方法及设备,涉及电子设备领域。解决了将原始HTTP请求划分为多个HTTP请求从不同CDN服务器拉取数据,可能会由于拉取数据不一致,导致最后拼接的数据无效的问题。在电子设备需要从多个CDN服务器下载数据时,可为不同CDN服务器分配的byte Range设计重合区间,意味着重合区间的数据电子设备会从不同CDN服务器都进行下载,这部分数据用于进行从不同CDN服务器拉取数据的数据一致性的校验。电子设备可在确定从不同CDN服务器拉取的数据一致时,进行数据合并以获得最终所需数据。

【技术实现步骤摘要】
一种HTTP请求传输方法及设备
本申请涉及电子设备领域,尤其涉及一种超文本传输协议(hypertexttransferprotocol,HTTP)请求传输方法及设备。
技术介绍
随着电子技术的不断发展,如手机,平板电脑等电子设备允许无线保真(wirelessfidelity,Wi-Fi)和蜂窝双网的同时使用,以提升通信体验。例如,用户在使用手机观看视频时,同时使用Wi-Fi网络和蜂窝网,可提供更大的聚合带宽,使得视频下载速率更高、卡顿更少、更流畅。为了能够实现Wi-Fi网络和蜂窝网的同时使用,业界提出了多路径超文本传输协议(multipathhypertexttransferprotocol,MPHTTP)技术。在MPHTTP技术中,对于应用程序(application,APP)发起的原始HTTP请求,电子设备可根据该原始HTTP请求中携带的字节范围(byteRange),将该原始HTTP请求分为多个(如两个)HTTP请求后,分别通过Wi-Fi网络和蜂窝网发送给对应内容分发网络(contentdistributionnetwork,CDN)服务器,以从CDN服务器拉取相应数据,达到提供更大聚合带宽的目的。一般的,不同网络中提供内容访问的CDN服务器不同。如果针对划分的多个HTTP请求,电子设备从同一个CDN服务器拉取数据,则可能会由于跨网访问导致下载速度非常慢甚至不能访问的问题。因此,为了让用户能够获得最佳的业务体验,针对划分的多个HTTP请求,电子设备通常会从不同的CDN服务器拉取数据。例如,如图1所示,以原始HTTP请求的byteRange为1-200,蜂窝网中提供内容访问的CDN服务器为CDN1,Wi-Fi网络中提供内容访问的CDN服务器为CDN2为例。电子设备可将原始HTTP请求划分为两个HTTP请求,分别为:HTTP请求1,携带的byteRange为1-100;HTTP请求2,携带的byteRange为101-200。电子设备通过蜂窝网向CDN1发送HTTP请求1,用于从CDN1拉取byteRange为1-100的数据,通过Wi-Fi网络向CDN2发送HTTP请求2,用于从CDN2拉取byteRange为101-200的数据。之后,电子设备将分别从CDN1和CDN2获得的数据进行拼接,便可获得原始HTTP请求所请求拉取的数据。但是,将原始HTTP请求划分为多个HTTP请求,从不同CDN服务器拉取数据,可能会存在拉取数据不一致的问题,导致最后拼接的数据无效。
技术实现思路
本申请实施例提供一种HTTP请求传输方法及设备,解决了将原始HTTP请求划分为多个HTTP请求从不同CDN服务器拉取数据,可能会由于拉取数据不一致,导致最后拼接的数据无效的问题。为达到上述目的,本申请采用如下技术方案:第一方面,本申请实施例提供一种HTTP请求传输方法,该方法可以应用于电子设备,该方法可以包括:电子设备根据需请求数据的byteRange,为第一CDN服务器分配第一byteRange,为第二CDN服务器分配第二byteRange,第一byteRange和第二byteRange存在重合区间;电子设备根据第一byteRange向第一CDN服务器发送第一HTTP请求,根据第二byteRange向第二CDN服务器发送第二HTTP请求;其中,第一HTTP请求至少用于从第一CDN服务器下载第一数据,第二HTTP请求至少用于从第二CDN服务器下载第二数据,第一数据和第二数据为byteRange为重合区间的数据,用于校验从第一CDN服务器和第二CDN服务器下载数据的一致性。采用该技术方案,在电子设备需要从多个CDN服务器下载数据时,为不同CDN服务器分配的byteRange设计重合区间,意味着重合区间的数据电子设备会从不同CDN服务器都进行下载,这部分数据可用于进行从不同CDN服务器拉取数据的数据一致性的校验。之后,电子设备可以在确定从不同CDN服务器拉取的数据一致时,进行数据合并以获得最终所需数据。这样,采用MPHTTP技术,不仅可以获得更大聚合带宽,同时可确保数据合并的有效性,保证了业务的正常运行。在一种可能的实现方式中,第一byteRange标识的所请求数据的截止字节,大于第二byteRange标识的所请求数据的开始字节。也就是说,第二byteRange的编号较小的字节与第一byteRange的编号较大的字节部分重合。在另一种可能的实现方式中,上述电子设备根据需请求数据的byteRange,为第一内容分发网络CDN服务器分配第一byteRange,为第二CDN服务器分配第二byteRange,可以包括:电子设备根据需请求数据的byteRange,为第一CDN服务器分配第三byteRange,为第二CDN服务器分配第四byteRange;其中,第三byteRange和第四byteRange不存在重合区间,且第三byteRange和第四byteRange的交集为需请求数据的byteRange;电子设备根据预定义的初始值对第三byteRange标识的所请求数据的截止字节进行调整,以获得第一byteRange,并将第四byteRange作为第二byteRange。这样,通过为不同CDN服务器先分配对应的byteRange,以便于分配的byteRange能够满足特定的性能需求,如下载数据的速率最佳,又如使得不同CDN服务器之间的性能能够均衡。在另一种可能的实现方式中,该方法还可以包括:电子设备从第一CDN服务器接收第一数据,从第二CDN服务器接收第二数据;电子设备根据第一数据和第二数据,对从第一CDN服务器和第二CDN服务器下载数据的一致性进行校验。在另一种可能的实现方式中,在上述电子设备根据第一数据和第二数据,对从第一CDN服务器和第二CDN服务器下载数据的一致性进行校验之前,该方法还可以包括:电子设备获取第一数据和第二数据中填充数据的比例;上述电子设备根据第一数据和第二数据,对从第一CDN服务器和第二CDN服务器下载数据的一致性进行校验,可以包括:电子设备在确定填充数据的比例的小于阈值时,根据第一数据和第二数据,对从第一CDN服务器和第二CDN服务器下载数据的一致性进行校验。在进行数据一致性校验之前,先确认进行比对的数据中填充数据的占比,在占比满足一定条件时,才利用这些数据进行一致性校验,确保了数据一致性校验的准确性。在另一种可能的实现方式中,该方法还可以包括:电子设备在确定填充数据的比例大于阈值时,对第一byteRange标识的所请求数据的截止字节进行调整,增加第一byteRange和第二byteRange的重合区间,至少用于从第一CDN服务器下载第三数据,从第二CDN服务器下载第四数据;当电子设备确定第三数据和第四数据中填充数据的比例小于阈值时,根据第三数据和第四数据,对从第一CDN服务器和第二CDN服务器下载数据的一致性进行校验;当电子设备确定第三数据和第四数据中填充数据的比例大于阈值,则继续增加第一byteRange和第二byteRange的重合区间,直到从第本文档来自技高网
...

【技术保护点】
1.一种超文本传输协议HTTP请求传输方法,其特征在于,应用于电子设备,所述方法包括:/n所述电子设备根据需请求数据的字节范围byte Range,为第一CDN服务器分配第一byte Range,并为第二CDN服务器分配第二byte Range,所述第一byte Range和所述第二byte Range存在重合区间;/n所述电子设备根据所述第一byte Range向所述第一CDN服务器发送第一HTTP请求,根据所述第二byte Range向所述第二CDN服务器发送第二HTTP请求;/n其中,所述第一HTTP请求至少用于从所述第一CDN服务器下载第一数据,所述第二HTTP请求至少用于从所述第二CDN服务器下载第二数据。/n

【技术特征摘要】
1.一种超文本传输协议HTTP请求传输方法,其特征在于,应用于电子设备,所述方法包括:
所述电子设备根据需请求数据的字节范围byteRange,为第一CDN服务器分配第一byteRange,并为第二CDN服务器分配第二byteRange,所述第一byteRange和所述第二byteRange存在重合区间;
所述电子设备根据所述第一byteRange向所述第一CDN服务器发送第一HTTP请求,根据所述第二byteRange向所述第二CDN服务器发送第二HTTP请求;
其中,所述第一HTTP请求至少用于从所述第一CDN服务器下载第一数据,所述第二HTTP请求至少用于从所述第二CDN服务器下载第二数据。


2.根据权利要求1所述的方法,其特征在于,所述第一byteRange标识的所请求数据的截止字节,大于所述第二byteRange标识的所请求数据的开始字节。


3.根据权利要求1或2所述的方法,其特征在于,所述电子设备根据需请求数据的byteRange,为第一CDN服务器分配第一byteRange,为第二CDN服务器分配第二byteRange,包括:
所述电子设备根据所述需请求数据的byteRange,为所述第一CDN服务器分配第三byteRange,为所述第二CDN服务器分配第四byteRange;其中,所述第三byteRange和所述第四byteRange不存在重合区间;
所述电子设备根据预定义的初始值对所述第三byteRange标识的所请求数据的截止字节进行调整,以获得所述第一byteRange,并将所述第四byteRange作为所述第二byteRange,以获得存在重合区间的第一byteRange和第二byteRange。


4.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
所述电子设备从所述第一CDN服务器接收所述第一数据,从所述第二CDN服务器接收所述第二数据;
所述电子设备根据所述第一数据和所述第二数据,对从所述第一CDN服务器和所述第二CDN服务器下载数据的一致性进行校验。


5.根据权利要求4所述的方法,其特征在于,在所述电子设备根据所述第一数据和所述第二数据,对从所述第一CDN服务器和所述第二CDN服务器下载数据的一致性进行校验之前,所述方法还包括:
所述电子设备获取所述第一数据和所述第二数据中填充数据的比例;
所述电子设备根据所述第一数据和所述第二数据,对从所述第一CDN服务器和所述第二CDN服务器下载数据的一致性进行校验,包括:
所述电子设备在确定所述填充数据的比例的小于阈值时,根据所述第一数据和所述第二数据,对从所述第一CDN服务器和所述第二CDN服务器下载数据的一致性进行校验。


6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
所述电子设备在确定所述填充数据的比例大于所述阈值时,对所述第一byteRange标识的所请求数据的截止字节进行调整,增加所述第一byteRange和所述第二byteRange的重合区间,至少用于从所述第一CDN服务器下载第三数据,从所述第二CDN服务器下载第四数据;
当所述电子设备确定所述第三数据和所述第四数据中填充数据的比例小于所述阈值时,根据所述第三数据和所述第四数据,对从所述第一CDN服务器和所述第二CDN服务器下载数据的一致性进行校验;当所述电子设备确定所述第三数据和所述第四数据中填充数据的比例大于所述阈值,则继续增加所述第一byteRange和所述第二byteRange的重合区间,直到从所述第一CDN服务器和所述第二CDN服务器下载的byteRange相同的数据的填充数据比例小于所述阈值,用于对从所述第一CDN服务器和所述第二CDN服务器下载数据的一致性进行校验。


7.根据权利要求1、2、5或6中任一项所述的方法,其特征在于,
所述...

【专利技术属性】
技术研发人员:王皓胡征许辰人郭兴民李小金颜志勇
申请(专利权)人:华为技术有限公司北京大学
类型:发明
国别省市:广东;44

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

1