CN111010349B - 针对首屏的传输加速方法及装置 - Google Patents

针对首屏的传输加速方法及装置 Download PDF

Info

Publication number
CN111010349B
CN111010349B CN201811166370.7A CN201811166370A CN111010349B CN 111010349 B CN111010349 B CN 111010349B CN 201811166370 A CN201811166370 A CN 201811166370A CN 111010349 B CN111010349 B CN 111010349B
Authority
CN
China
Prior art keywords
screen
window value
window
initial
transmission
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201811166370.7A
Other languages
English (en)
Other versions
CN111010349A (zh
Inventor
韩瑞
邱于兵
曾福华
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Alibaba Group Holding Ltd
Original Assignee
Alibaba Group Holding Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Alibaba Group Holding Ltd filed Critical Alibaba Group Holding Ltd
Priority to CN201811166370.7A priority Critical patent/CN111010349B/zh
Publication of CN111010349A publication Critical patent/CN111010349A/zh
Application granted granted Critical
Publication of CN111010349B publication Critical patent/CN111010349B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/27Evaluation or update of window size, e.g. using information derived from acknowledged [ACK] packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/12Avoiding congestion; Recovering from congestion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/25Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D30/00Reducing energy consumption in communication networks
    • Y02D30/70Reducing energy consumption in communication networks in wireless communication networks

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本说明书实施例公开了一种针对首屏的传输加速方法及装置。针对首屏的传输加速方法包括:将首屏的初始网络时延内的初始窗口值提高至预设窗口值;在首屏传输的数据包大小未达预设数据量之前,将首屏每一轮网络时延内的窗口值设置为按设定倍数增长。本发明通过将首屏的初始网络时延内的初始窗口值提高至预设窗口值,增加了初始窗口值,提高了初始传输速度。通过在在首屏传输的数据包大小未达预设数据量之前,将首屏每一轮网络时延内的窗口值设置为按倍数增长,保证了窗口前期具有较高的增长速度,进而完成了首屏的加速优化。

Description

针对首屏的传输加速方法及装置
技术领域
本说明书实施例方案属于计算机技术领域,尤其涉及一种针对首屏的传输加速方法及装置。
背景技术
TCP(Transmission Control Protocol,传输控制协议)作为最常用的传输协议,对现有的互联网应用影响巨大。所有基于TCP的应用,在传输速度方面,都不免受到TCP自身处理机制的限制。目前,移动端App(Application,应用程序)或PC(Personal Computer,个人计算机)端的网页、直播、点播的首屏,需要尽快展现给用户,否则会造成糟糕的体验效果,并导致点击率下降。常见的首屏、首页面,其所要求的传送规模并不大,众多的图片、网页请求仅仅要求服务端提供十几KB乃至几个KB的数据,而视频的首屏,一般也不会超过500KB。在网络传输中,一个数据包从发送端发出,到接收端确认信息返回到发送端的时间,称为网络时延(Round Trip Time,简称RTT)。在TCP传输作业中,把一个RTT内允许发送的数据包个数,称为“窗口”,因此,窗口数越多,TCP传输速度就越快。
现有技术采用的TCP传输方式为“慢启动”(起始传输速度从一个比较低的值开始,在遭遇丢包前,每个往返周期成倍增长,这个过程被称为“慢启动”)。作为一种示例,如附图2所示,初始窗口值为2,如果传输过程没有丢包,发送顺畅,那么窗口数继续增长。在第二轮RTT中,窗口数增长至4,第三轮增长至8…第十轮增长至1024,在窗口值不断增长的过程中,TCP传输速度也在不断提高。
在现有技术中,窗口值成倍增长,虽然后期窗口值可以增长到很高,即后期TCP传输速度很高。但是,前期窗口值较低,即前期TCP传输速度较低,TCP首屏加载速度较低,仍然会给用户带来较差的体验。
发明内容
本说明书实施例目的在于提供一种针对首屏的传输加速方法及装置,可以提高初始传输速度,以及后期的传输增长速度。
本说明书实施例提供的一种针对首屏的传输加速方法及装置是包括以下方式实现的:
一种针对首屏的传输加速方法,包括:
将首屏的初始网络时延(RTT)内的初始窗口值提高至预设窗口值;
在首屏传输的数据包大小未达预设数据量之前,将首屏每一轮网络时延(RTT)内的窗口值设置为按倍数增长;
在增加首屏每一轮网络时延内的窗口值增长倍数的过程中,若出现丢包,则降低窗口值,按如下公式来处理窗口:
swnd=max(40,0.8×loss_swnd);
其中,swnd(Sending window)表示发送窗口大小,loss_swnd表示丢包发生时的发送窗口大小。
一种针对首屏的传输加速装置,所述装置包括:
提升模块,用于将首屏的初始网络时延(RTT)内的初始窗口值提高至预设窗口值;
加速模块,用于在首屏传输的数据包大小未达预设数据量之前,将首屏每一轮网络时延(RTT)内的窗口值设置为设定按倍数增长;
丢包模块,用于在增加首屏每一轮网络时延内的窗口值增长倍数的过程中,若出现丢包,则降低窗口值,按如下公式来处理窗口:
swnd=max(40,0.8×loss_swnd);
其中,swnd(Sending window)表示发送窗口大小,loss_swnd表示丢包发生时的发送窗口大小。
一种服务器,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现上述针对首屏的传输加速方法。
一种计算机可读存储介质,所述计算机可读存储介质存储有执行上述针对首屏的传输加速方法的计算机程序。
本说明书实施例提供的针对首屏的传输加速方法及装置,通过将首屏的初始网络时延(RTT)内的初始窗口值提高至预设窗口值,增加了初始窗口值,提高了初始传输速度。通过在在首屏传输的数据包大小未达预设数据量之前,将首屏每一轮网络时延(RTT)内的窗口值设置为按设定倍数增长,保证了窗口前期具有较高的增长速度,进而完成首屏的加速优化。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例中针对首屏的传输加速装置的示意图;
图2是现有技术中窗口值的变化示意图;
图3是本发明实施例与现有技术中窗口值变化的对比图;
图4是本发明实施例中针对首屏的传输加速方法的流程示意图;
图5是本发明实施例中针对首屏的传输加速方法的一具体示例图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书中的一部分实施例,而不是全部的实施例。基于本说明书中的一个或多个实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本说明书实施例保护的范围。
在网络传输中,一个数据包从发送端发出,到接收端确认信息返回到发送端的时间,称为网络时延(Round Trip Time,简称RTT)。在TCP(Transmission Control Protocol,传输控制协议)传输策略中,把一个RTT内,策略允许发送的数据包个数,称为“窗口”,因此,窗口数越多,TCP传输速度就越快。现有技术采用的TCP传输方式为“慢启动”(起始传输速度从一个比较低的值开始,在遭遇丢包前,每个往返周期成倍增长,这个过程被称为“慢启动”)。作为一种示例,如附图2所示,初始窗口值为2,如果传输过程没有丢包,发送顺畅,那么窗口数继续增长。在第二轮RTT中,窗口数增长至4,第三轮增长至8…第十轮增长至1024,在窗口值不断增长的过程中,TCP传输速度也在不断提高。在现有技术中,窗口值成倍增长,虽然后期窗口值可以增长到很高,即后期TCP传输速度很高。但是,前期窗口值较低,即前期TCP传输速度较低,TCP首屏加载速度较低,仍然会给用户带来较差的体验。
因此,业内亟需一种能够提升前期传输速度,即提高首屏加载速度的解决方案。为了解决现有技术中存在的问题,本发明实施例提供了一种针对首屏的传输加速装置。该装置不仅适用于TCP通信协议,也可以适用于其它协议,如UPD(Open SystemInterconnection,开放式系统互联)通信协议。
如附图1所示,该针对首屏的传输加速装置包括:
提升模块100,用于将首屏的初始网络时延(RTT)内的初始窗口值提高至预设窗口值。
加速模块200,用于在首屏传输的数据包大小未达预设数据量之前,将首屏每一轮网络时延(RTT)内的窗口值设置为按设定倍数增长。
本发明实施例提供的针对首屏的传输加速装置,通过设置提升模块101,提高了传输的初始速度。通过设置加速模块102,提高了在首屏传输的数据包大小未达预设数据量之前的传输速度,保证了在前期有较高的传输速度,进而完成了首屏的加速优化。
为了保证首屏加速优化的顺利进行,可以将预设窗口值设置为40-50个(如40个、45个、50个等);将预设数据量设置为350-400KB(如350KB、375KB、400KB等);将每一轮RTT窗口值的增长倍数设置为3-4倍(如3倍、3.5倍、4倍等)。
作为一种示例,在首屏加速作业过程中,将首屏的初始网络时延(RTT)内的初始窗口值提高至40个;在首屏传输的数据包大小未达400KB之前,使首屏每一轮网络时延(RTT)内的窗口值按3倍增长,如果已经超过400KB,那么就回归到默认的算法模式,不做额外的加速。此时的窗口值增长曲线与现有技术中的窗口值增长曲线对比图可参见附图3。
由于CDN(Content Delivery Network,即内容分发网络)线上服务的流量众多,对所有的流量都开启加速优化显然是不合适的,有加速传输优化需求的域名是少数,而加速传输也意味着突发的风险增加,并可能导致拥塞以及重传。因此,为了保证只有在首屏对应域名开启首屏优化功能时才提升初始窗口值,可以使提升模块101进一步用于:在首屏对应域名开启首屏优化功能时,将首屏的初始网络时延(RTT)内的初始窗口值提高至预设窗口值。
此外,为了在加速作业中考虑到丢包的情况,如附图1所示,该针对首屏的传输加速装置还包括:
丢包模块300,用于在首屏对应域名开启首屏优化功能时,将首屏的初始网络时延(RTT)内的初始窗口值提高至预设窗口值。
具体地,当遇到丢包时,标准TCP传输时会选择按一定比例降低窗口大小,退避并让出带宽,以防止过度拥塞。但对于首屏优化的场景来说,如果我们只加速预设数据量之前(即400KB以内),窗口仍然可以维持较高的值来保证传输速度。因此,对于400KB内遭遇丢包的情况,可以按下面公式来处理窗口:
swnd=max(40,0.8×loss_swnd);
其中,swnd(Sending window)表示发送窗口大小,loss_swnd表示发生丢包时的发送窗口大小。
进一步地,为了不影响初始窗口值,在丢包发生后,可以使降低后的窗口值大于预设窗口值。
具体地,在丢包发生后,我们可以将窗口大小降低20%,跟现有标准TCP的降低幅度一致,但保证初始窗口值不小于预设窗口值。
此外,为了解决现有技术中存在的问题,本发明实施例还提供了一种针对首屏的传输加速方法,该方法不仅适用于TCP通信协议,也可以适用于其它协议,如UPD(OpenSystem Interconnection,开放式系统互联)通信协议。
如附图4所示,该方法包括:
S101、将首屏的初始网络时延(RTT)内的初始窗口值提高至预设窗口值。
S102、在首屏传输的数据包大小未达预设数据量之前,将首屏每一轮网络时延(RTT)内的窗口值设置为按设定倍数增长。
本发明实施例提供的针对首屏的传输加速方法,通过将首屏的初始网络时延(RTT)内的初始窗口值提高至预设窗口值,提高了传输的初始速度。通过在首屏传输的数据包大小未达预设数据量之前,将首屏每一轮网络时延(RTT)内的窗口值设置为按倍数增长,提高了在首屏传输的数据包大小未达预设数据量之前的传输速度,保证了在前期有较高的传输速度,进而完成了首屏的加速优化。
为了保证首屏的加速优化的顺利进行,可以将预设窗口值设置为40-50个;将预设数据量设置为350-400KB;将每一轮RTT窗口值的增长倍数设置为3-4倍。
作为一种示例,在首屏加速作业过程中,将首屏的初始网络时延(RTT)内的初始窗口值提高至40个;在首屏传输的数据包大小未达400KB之前,使首屏每一轮网络时延(RTT)内的窗口值按3倍增长,此时的窗口值增长曲线与现有技术中的窗口值增长曲线对比图可参见附图3。
由于CDN(Content Delivery Network,即内容分发网络)线上服务的流量众多,对所有的流量都开启加速优化显然是不合适的,有加速传输优化需求的域名是少数,而加速传输也意味着突发的风险增加,并可能导致拥塞以及重传。因此,为了保证只有在首屏对应域名开启首屏优化功能时才提升初始窗口值,将首屏的初始网络时延(RTT)内的初始窗口值提高至预设窗口值包括:
在首屏对应域名开启首屏优化功能时,将首屏的初始网络时延(RTT)内的初始窗口值提高至预设窗口值。
此外,为了在加速作业中考虑到丢包的情况,如附图4所示,该针对首屏的传输加速方法还包括:
S103、在首屏对应域名开启首屏优化功能时,将首屏的初始网络时延(RTT)内的初始窗口值提高至预设窗口值。
具体地,当遇到丢包时,标准TCP传输时会选择按一定比例降低窗口大小,退避并让出带宽,以防止过度拥塞。但对于首屏优化的场景来说,如果我们只加速预设数据量之前(即400KB以内),窗口仍然可以维持较高的值来保证传输速度。因此,对于400KB内遭遇丢包的情况,可以按下面公式来处理窗口:
swnd=max(40,0.8×loss_swnd);
其中,swnd(Sending window)表示发送窗口大小,loss_swnd表示丢包发生时的发送窗口大小。
进一步地,为了不影响初始窗口值,在出现丢包时,可以使降低后的窗口值大于预设窗口值。
具体地,在丢包发生后,我们可以将窗口大小降低20%,跟现有标准TCP的降低幅度一致,但保证初始窗口值不小于预设窗口值。
作为一种示例,如附图5所示,开始作业,判断首屏对应域名是否开启了首屏优化功能。若未开启,则结束操作。若开启,则将首屏的初始网络时延(RTT)内的初始窗口值提高至预设窗口值,判断首屏传输的数据包大小是否在预设数据量之前,若不在,则结束操作;若在,则将首屏每一轮网络时延(RTT)内的窗口值设置为按倍数增长,结束操作。
上述的指令可以存储在多种计算机可读存储介质中。所述计算机可读存储介质可以包括用于存储信息的物理装置,可以将信息数字化后再以利用电、磁或者光学等方式的媒体加以存储。本实施例所述的计算机可读存储介质有可以包括:利用电能方式存储信息的装置如,各式存储器,如RAM、ROM等;利用磁能方式存储信息的装置如,硬盘、软盘、磁带、磁芯存储器、磁泡存储器、U盘;利用光学方式存储信息的装置如,CD或DVD。当然,还有其他方式的可读存储介质,例如量子存储器、石墨烯存储器等等。
本发明实施例中,通过将首屏的初始网络时延(RTT)内的初始窗口值提高至预设窗口值,增加了初始窗口值,提高了初始传输速度。通过在在首屏传输的数据包大小未达预设数据量之前,将首屏每一轮网络时延(RTT)内的窗口值设置为按倍数增长,保证了窗口前期具有较高的增长速度,进而完成首屏的加速优化。
实施例中,通过在首屏对应域名开启首屏优化功能时,将首屏的初始网络时延(RTT)内的初始窗口值提高至预设窗口值,保证了首屏加速作业的顺利进行。通过在增加首屏每一轮网络时延(RTT)内的窗口值增长倍数的过程中判断是否丢包,若出现丢包,则降低窗口值,实现了对丢包情况的优化处理。
本申请实施例所提供的方法实施例可以在移动终端、计算机终端、服务器或者类似的运算装置中执行。以运行在服务器上为例,服务器可以包括一个或多个处理器(处理器可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)、用于存储数据的存储器、以及用于通信功能的传输模块。
存储器可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器可进一步包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至计算机终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于硬件+程序类实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
虽然本申请提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的劳动可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或客户端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境)。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
上述实施例阐明的方法及装置,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、车载人机交互设备、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
虽然本说明书实施例提供了如实施例或流程图所述的方法操作步骤,但基于常规或者无创造性的手段可以包括更多或者更少的操作步骤。实施例中列举的步骤顺序仅仅为众多步骤执行顺序中的一种方式,不代表唯一的执行顺序。在实际中的装置或终端产品执行时,可以按照实施例或者附图所示的方法顺序执行或者并行执行(例如并行处理器或者多线程处理的环境,甚至为分布式数据处理环境)。术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、产品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、产品或者设备所固有的要素。在没有更多限制的情况下,并不排除在包括所述要素的过程、方法、产品或者设备中还存在另外的相同或等同要素。
为了描述的方便,描述以上装置时以功能分为各种模块分别描述。当然,在实施本说明书实施例时可以把各模块的功能在同一个或多个软件和/或硬件中实现,也可以将实现同一功能的模块由多个子模块或子单元的组合实现等。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内部包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
本领域技术人员应明白,本说明书的实施例可提供为方法、系统或计算机程序产品。因此,本说明书实施例可采用完全硬件实施例、完全软件实施例或结合软件和硬件方面的实施例的形式。而且,本说明书实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本说明书实施例的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
以上所述仅为本说明书实施例的实施例而已,并不用于限制本说明书实施例。对于本领域技术人员来说,本说明书实施例可以有各种更改和变化。凡在本说明书实施例的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本说明书实施例的权利要求范围之内。

Claims (10)

1.一种针对首屏的传输加速方法,其特征在于,包括:
将首屏的初始网络时延内的初始窗口值提高至预设窗口值;
在首屏传输的数据包大小未达预设数据量之前,将首屏每一轮网络时延内的窗口值设置为按设定倍数增长;
在增加首屏每一轮网络时延内的窗口值增长倍数的过程中,若出现丢包,则降低窗口值,按如下公式来处理窗口:
swnd=max(40,0.8×loss_swnd);
其中,swnd(Sending window)表示发送窗口大小,loss_swnd表示丢包发生时的发送窗口大小。
2.如权利要求1所述的方法,其特征在于,将首屏的初始网络时延内的初始窗口值提高至预设窗口值,包括:
在首屏对应域名开启首屏优化功能时,将首屏的初始网络时延内的初始窗口值提高至预设窗口值。
3.如权利要求1所述的方法,其特征在于,降低后的窗口值大于所述预设窗口值。
4.如权利要求1所述的方法,其特征在于,所述预设窗口值为40-50个。
5.如权利要求1所述的方法,其特征在于,所述预设数据量为350-400KB。
6.如权利要求1所述的方法,其特征在于,每一轮RTT窗口值的增长倍数为3-4倍。
7.一种针对首屏的传输加速装置,其特征在于,所述装置包括:
提升模块,用于将首屏的初始网络时延内的初始窗口值提高至预设窗口值;
加速模块,用于在首屏传输的数据包大小未达预设数据量之前,将首屏每一轮网络时延内的窗口值设置为设定按倍数增长;
丢包模块,用于在增加首屏每一轮网络时延内的窗口值增长倍数的过程中,若出现丢包,则降低窗口值,按如下公式来处理窗口:
swnd=max(40,0.8×loss_swnd);
其中,swnd(Sending window)表示发送窗口大小,loss_swnd表示丢包发生时的发送窗口大小。
8.如权利要求7所述的装置,其特征在于,所述提升模块进一步用于:在首屏对应域名开启首屏优化功能时,将首屏的初始网络时延内的初始窗口值提高至预设窗口值。
9.一种服务器,其特征在于,包括处理器以及用于存储处理器可执行指令的存储器,所述处理器执行所述指令时实现权利要求1至6任一所述方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有执行权利要求1至6任一所述方法的计算机程序。
CN201811166370.7A 2018-10-08 2018-10-08 针对首屏的传输加速方法及装置 Active CN111010349B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811166370.7A CN111010349B (zh) 2018-10-08 2018-10-08 针对首屏的传输加速方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811166370.7A CN111010349B (zh) 2018-10-08 2018-10-08 针对首屏的传输加速方法及装置

Publications (2)

Publication Number Publication Date
CN111010349A CN111010349A (zh) 2020-04-14
CN111010349B true CN111010349B (zh) 2023-06-02

Family

ID=70110706

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811166370.7A Active CN111010349B (zh) 2018-10-08 2018-10-08 针对首屏的传输加速方法及装置

Country Status (1)

Country Link
CN (1) CN111010349B (zh)

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104065464A (zh) * 2013-03-18 2014-09-24 中国移动通信集团公司 一种调整tcp连接的初始窗口大小的方法和装置
WO2015078492A1 (en) * 2013-11-27 2015-06-04 Telefonaktiebolaget L M Ericsson (Publ) Controlling a transmission control protocol window size
CN104954279A (zh) * 2014-03-28 2015-09-30 华为技术有限公司 一种传输控制方法、装置及系统
CN105227484A (zh) * 2015-10-16 2016-01-06 中国人民解放军国防科学技术大学 一种面向卫星网络的数据传输控制方法
CN105471766A (zh) * 2015-11-25 2016-04-06 中国联合网络通信集团有限公司 一种网页访问速率的调整方法及装置
JP2016174287A (ja) * 2015-03-17 2016-09-29 日本電気株式会社 Tcp制御装置、tcp制御装置の制御方法およびtcp制御装置のプログラム
CN107885799A (zh) * 2017-10-30 2018-04-06 维沃移动通信有限公司 网页信息显示方法及装置
CN108111430A (zh) * 2017-12-22 2018-06-01 北京百度网讯科技有限公司 一种tcp初始窗口优化方法和系统

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104065464A (zh) * 2013-03-18 2014-09-24 中国移动通信集团公司 一种调整tcp连接的初始窗口大小的方法和装置
WO2015078492A1 (en) * 2013-11-27 2015-06-04 Telefonaktiebolaget L M Ericsson (Publ) Controlling a transmission control protocol window size
CN104954279A (zh) * 2014-03-28 2015-09-30 华为技术有限公司 一种传输控制方法、装置及系统
JP2016174287A (ja) * 2015-03-17 2016-09-29 日本電気株式会社 Tcp制御装置、tcp制御装置の制御方法およびtcp制御装置のプログラム
CN105227484A (zh) * 2015-10-16 2016-01-06 中国人民解放军国防科学技术大学 一种面向卫星网络的数据传输控制方法
CN105471766A (zh) * 2015-11-25 2016-04-06 中国联合网络通信集团有限公司 一种网页访问速率的调整方法及装置
CN107885799A (zh) * 2017-10-30 2018-04-06 维沃移动通信有限公司 网页信息显示方法及装置
CN108111430A (zh) * 2017-12-22 2018-06-01 北京百度网讯科技有限公司 一种tcp初始窗口优化方法和系统

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
IETF RFC 6298:Increasing TCP"s Initial Window;J. Chu,N. Dukkipati,Y. Cheng,M. Mathis,Google, Inc;《Internet Engineering Task Force (IETF)》;20130430;第5页第1段至第9页第3段 *

Also Published As

Publication number Publication date
CN111010349A (zh) 2020-04-14

Similar Documents

Publication Publication Date Title
CN109617829B (zh) 一种业务请求数据的处理方法、装置及系统
US11018798B2 (en) Auto-tuning reliability protocol in pub-sub RTPS systems
US10862992B2 (en) Resource cache management method and system and apparatus
EP4210053A1 (en) Application program control method and apparatus, electronic device, and storage medium
WO2020063008A1 (zh) 资源配置方法、装置、终端及存储介质
US11301296B2 (en) Memory management based on classification of a software process
CN115102908B (zh) 基于带宽控制的网络报文生成的方法以及相关装置
CN113645150A (zh) 传输速率控制方法、装置、电子设备和可读存储介质
CN115858184B (zh) 一种rdma内存管理方法、装置、设备及介质
WO2023160276A1 (zh) 一种数据处理方法、装置、计算机设备以及可读存储介质
CN114205762A (zh) 短信流量控制方法、设备及存储介质
US20240314080A1 (en) Parameter adjustment method and apparatus
CN114143140A (zh) 一种数据传输系统、方法、存储介质及电子设备
CN109189528B (zh) 弹窗展示的控制方法、弹窗展示方法
CN117407124B (zh) 一种基于构建出的数据编排策略生成模型的业务执行方法
CN107391274A (zh) 离线消息的处理方法及装置
CN111010349B (zh) 针对首屏的传输加速方法及装置
CN111294377A (zh) 一种依赖关系的网络请求发送方法、终端装置及存储介质
CN109190071A (zh) 移动端缓存方法及装置
US9021109B1 (en) Controlling requests through message headers
CN102340442A (zh) 调整接口接收队列长度的方法及装置
US20210336903A1 (en) Controlling socket receive buffer for traffic optimization
CN110956349B (zh) 服务质量分析方法、系统、装置、服务器及电子设备
CN114186163A (zh) 一种应用层网络数据缓存方法
CN116954952B (zh) 一种机器人的自适应混合通信方法、装置、介质及设备

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40027880

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant