CN116614441A - 带宽利用方法和装置 - Google Patents
带宽利用方法和装置 Download PDFInfo
- Publication number
- CN116614441A CN116614441A CN202210122756.8A CN202210122756A CN116614441A CN 116614441 A CN116614441 A CN 116614441A CN 202210122756 A CN202210122756 A CN 202210122756A CN 116614441 A CN116614441 A CN 116614441A
- Authority
- CN
- China
- Prior art keywords
- network connection
- network
- sending rate
- connection
- rate
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 56
- 230000005540 biological transmission Effects 0.000 claims description 144
- 238000012545 processing Methods 0.000 claims description 15
- 230000008878 coupling Effects 0.000 claims description 7
- 238000010168 coupling process Methods 0.000 claims description 7
- 238000005859 coupling reaction Methods 0.000 claims description 7
- 238000011084 recovery Methods 0.000 description 45
- 238000010586 diagram Methods 0.000 description 16
- 238000004891 communication Methods 0.000 description 12
- 238000007726 management method Methods 0.000 description 12
- 238000003860 storage Methods 0.000 description 10
- 230000006870 function Effects 0.000 description 9
- 238000004590 computer program Methods 0.000 description 7
- 230000008859 change Effects 0.000 description 5
- 230000007246 mechanism Effects 0.000 description 4
- 230000007423 decrease Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000011156 evaluation Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 3
- 230000008569 process Effects 0.000 description 3
- 239000000654 additive Substances 0.000 description 2
- 230000000996 additive effect Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 230000001934 delay Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000012544 monitoring process Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0896—Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/122—Avoiding congestion; Recovering from congestion by diverting traffic away from congested entities
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/125—Avoiding congestion; Recovering from congestion by balancing the load, e.g. traffic engineering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/12—Avoiding congestion; Recovering from congestion
- H04L47/127—Avoiding congestion; Recovering from congestion by using congestion prediction
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例提供了一种带宽利用方法,其中,该方法包括:确定计算机设备的网络连接发生变化,所述计算机设备通过专线网络与其他计算机设备进行通信;获取网络连接信息和所述专线网络的总带宽,所述网络连接信息用于指示网络连接变化后的第一网络连接的最大发送速率,第一网络连接属于第一连接集合且属于第二连接集合,第一连接集合由网络连接发生变化前的网络连接组成,第二连接集合由网络连接发生变化后的网络连接组成;根据所述网络连接信息和所述专线网络的总带宽,重新确定所述第一网络连接的最大发送速率;调整所述第一网络连接的发送速率至所述最大发送速率。本申请的技术方案能够充分利用专线网络的带宽,提升网络带宽的利用率。
Description
技术领域
本申请实施例涉及计算机领域,具体涉及带宽利用方法和装置。
背景技术
网络拥塞的主要成因是数据发送方投放到网络中的数据超出了网络的承载能力。若出现网络拥塞而不进行控制,整个网络的性能将随输入负荷的增大而急剧下降。传输控制协议(transmission control protocol,TCP)是最常用的传输层协议之一,为上层协议提供面向连接的、可靠的传输服务。为了尽可能的提供最大的吞吐量,TCP使用滑动窗口和拥塞窗口机制来控制某一时间点投放到网络中的数据量,以达到尽可能占满可用带宽,并且不产生拥塞的目的。
专线是运营商为集团客户提供各种速率的专用链路,直接连接主干网络,可以方便快捷的高速上网。例如,网络专线可以是为某个机构例如企业、银行等单独使用的一条独立的网络线路,让用户的数据传输变得更加可靠可信。专线网络中,通常采用TCP作为传输协议。现有的TCP拥塞控制机制无法充分利用专线网络带宽。
因此,如何充分利用专线网络带宽是一个亟待解决的技术问题。
发明内容
本申请实施例提供一种带宽利用方法和装置,能够充分利用专线网络的带宽,提升网络带宽的利用率。
第一方面,提供了一种带宽利用方法,该方法包括:确定计算机设备的网络连接发生变化,所述计算机设备通过专线网络与其他计算机设备进行通信;获取网络连接信息,所述网络连接信息用于指示网络连接变化后的第一网络连接的最大发送速率,所述第一网络连接属于第一连接集合且属于第二连接集合,所述第一连接集合由所述计算机设备的网络连接发生变化前的网络连接组成,所述第二连接集合由所述计算机设备的网络连接发生变化后的网络连接组成;根据所述网络连接信息,重新确定所述第一网络连接的最大发送速率;调整所述第一网络连接的发送速率至所述最大发送速率。
应理解,所述确定计算机设备的网络连接发生变化包括计算机设备新建网络连接和/或释放网络连接。
应理解,该第一网络连接不是令计算机设备网络连接总数量发生变化的网络连接,即不是新建的网络连接,也不是释放的网络连接。
可选的,本申请实施例可以用于集中式管理的网络,也可以用于分布式管理的网络。示例性地,数据中心A包括三台服务器,数据中心A与数据中心B通过专线进行网络连接。若数据中心A的网络为集中式管理,则该专线网络为数据中心A与数据中心B之间的网络。该计算机设备为数据中心A中用于管理网络连接的网络设备,如路由器、交换机或者代理服务器等。若数据中心A的网络为分布式管理,则该专线网络是每台服务器与数据中心B之间的网络。该计算机设备为数据中心A中的服务器。例如,第一台计算机设备与数据中心B之间的网络可以称为专线网络1,第二台计算机设备与数据中心B之间的网络可以称为专线网络2,第三台计算机设备与数据中心B之间的网络可以称为专线网络3。
结合第一方面,在第一方面的某些实现方式中,所述网络连接信息包括所述专线网络的总带宽和所述网络连接变化后的网络连接的总数量,或者,所述网络连接信息包括所述专线网络的总带宽和所述第一网络连接的权重信息。
示例性地,数据中心A包括三台服务器。若数据中心A的网络为集中式管理,则专线网络的总带宽为这三台服务器的网络总带宽,例如,这三台服务器的网络总带宽为1000Mbps。若数据中心A的网络为分布式管理,则每台服务器都可以看作一个计算机设备,每个计算机设备所分配得到的带宽都可以称为专线网络总带宽。例如,第一台计算机设备的专线网络总带宽为500Mbps,第二台计算机设备的专线网络总带宽为300Mbps,第三台计算机设备的专线网络总带宽为200Mbps。
可选的,可以根据专线网络的总带宽和变化后网络连接的总数量确定第一网络连接的最大发送速率,即用专线网络的总带宽除以网络连接总数量得到第一网络连接的最大发送速率。示例性地,专线网络的总带宽为1000Mbps,变化后网络连接总数量为10条,则第一网络连接的最大发送速率为100Mbps。可选的,还可以利用第一网络连接的权重信息和专线网络的总带宽得到第一网络连接的最大发送速率。示例性地,若第一网络连接的权重占计算机设备网络连接总数量变化后所有网络连接总权重的比例为0.2,专线网络的总带宽为1000Mbps,则第一网络连接的最大发送速率为200Mbps。
本申请实施例可以在计算机设备的网络连接发生变化后,通过网络连接信息实时的更新第一网络连接的最大发送速率,有效的提高了专线网络的带宽利用率。
结合第一方面,在第一方面的某些实现方式中,所述调整所述第一网络连接的发送速率至所述最大发送速率,包括:获取所述第一网络连接的当前发送速率;若所述当前发送速率小于所述最大发送速率,增加所述第一网络连接的发送速率至所述最大发送速率;若所述当前发送速率大于所述最大发送速率,降低所述第一网络连接的发送速率至所述最大发送速率。
应理解,在更新了第一网络连接的最大发送速率后,第一网络连接可以根据当前发送速率和最大发送速率的大小自行调整发送速率。
本申请实施例可以在计算机设备的网络连接发生变化后,通过网络连接信息和专线网络的总带宽实时的更新第一网络连接的最大发送速率,并将当前发送速率和最大发送速率的大小进行比较来调整发送速率,有效的提高了专线网络的带宽利用率。
结合第一方面,在第一方面的某些实现方式中,所述调整所述第一网络连接的发送速率至所述最大发送速率,包括:获取第一调整参数,所述第一调整参数大于0小于1;根据所述最大发送速率和所述第一调整参数确定所述第一网络连接的第一发送速率,设置所述第一网络连接的发送速率为所述第一发送速率;增加所述第一网络连接的发送速率至所述最大发送速率。
可选的,在计算机设备的网络连接发生变化后,还可以直接根据第一网络连接的最大发送速率和第一调整参数来设置第一网络连接的发送速率。示例性地,第一网络连接的最大发送速率为200Mbps,第一调整参数为0.9,则第一发送速率为180Mbps,即在计算机设备的网络连接发生变化后,设置第一网络连接的发送速率为180Mbps。
本申请实施例可以在计算机设备的网络连接发生变化后,通过第一网络连接的最大发送速率和第一调整参数来调整第一网络连接的发送速率,不仅提高了专线网络的带宽的利用率,而且降低了网络拥塞的发生概率。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:设置第二网络连接的发送速率为第二发送速率,所述第二发送速率小于所述第一发送速率,所述第二网络连接属于所述第二连接集合且不属于所述第一连接集合;增加所述第二网络连接的发送速率至所述第一发送速率。
应理解,本申请实施例中引起计算机设备网络连接发生变化的原因为新建了网络连接,第二网络连接为新建的网络连接。由于已建立的网络连接已有数据发送到网络中,如果第二网络连接发送较多数据可能会导致网络拥塞,因此可以设置第二网络连接的发送速率小于第一发送速率。
示例性的,可以获取第二调整参数,所述第二调整参数大于0小于1;根据所述第一发送速率和所述第二调整参数确定第二网络连接的第二发送速率,设置所述第二网络连接的发送速率为所述第二发送速率。即第二网络连接的第二发送速率根据第一发送速率和一个小于1的第二调整参数确定。在等待一段时间后,可以将第二网络连接的发送速率增加至第一发送速率,最后再增加至最大发送速率。
本申请实施例通过给计算机设备新建的网络连接设置一个较小的初始发送速率,再逐渐增加新建网络连接的发送速率,有效的降低了新建网络连接后网络拥塞的发生概率。
结合第一方面,在第一方面的某些实现方式中,所述方法还包括:确定所述计算机设备的网络发生拥塞;设置所述第一网络连接的发送速率为第三发送速率,所述第三发送速率小于所述最大发送速率。
当网络发生拥塞时,可以通过调整网络连接的发送速率来进行拥塞控制。可选的,可以获取第三调整参数,所述第三调整参数大于0小于1;根据所述最大发送速率和所述第三调整参数确定所述第一网络连接的第三发送速率,设置所述第一网络连接的发送速率为所述第三发送速率。示例性地,第三调整参数为0.8,第一网络连接正在以最大发送速率200Mbps发送数据时网络发生拥塞,则调整第一网络连接的发送速率为160Mbps。
本申请实施例可以通过在网络发生拥塞时调整网络连接的发送速率来进行拥塞控制,不需要令发送速率从0开始探测网络带宽,不仅有效的缓解了网络拥塞问题,而且提高了专线网络的带宽利用率。
结合第一方面,在第一方面的某些实现方式中,在所述设置所述第一网络连接的发送速率为所述第三发送速率之前,所述方法还包括:获取所述第一网络连接的重要等级;确定所述重要等级小于等于预设阈值。
应理解,当网络发生拥塞时,若某些网络连接比较重要,可以不降低该网络连接的发送速率,只降低重要等级小于预设阈值的网络连接,从而可以在发生网络拥塞时也能够保障重要数据的传输。
本申请实施例可以在网络发生拥塞时仅调整重要等级较低的网络连接的发送速率,而不改变重要等级较高的网络连接的发送速率,不仅缓解了网络拥塞问题,而且能够保障网络中重要数据的传输。
第二方面,本申请实施例提供一种计算机装置,该计算机装置包括用于实现第一方面或第一方面的任一种可能的实现方式的单元。
第三方面,本申请实施例提供一种计算机装置,该计算机装置包括处理器,该处理器用于与存储器耦合,读取并执行该存储器中的指令和/或程序代码,以执行第一方面或第一方面的任一种可能的实现方式。
第四方面,本申请实施例提供一种芯片系统,该芯片系统包括逻辑电路,该逻辑电路用于与输入/输出接口耦合,通过该输入/输出接口传输数据,以执行第一方面或第一方面任一种可能的实现方式。
第五方面,本申请实施例提供一种计算机可读存储介质,该计算机可读存储介质存储有程序代码,当该计算机存储介质在计算机上运行时,使得计算机执行如第一方面或第一方面的任一种可能的实现方式。
第六方面,本申请实施例提供一种计算机程序产品,该计算机程序产品包括:计算机程序代码,当该计算机程序代码在计算机上运行时,使得该计算机执行如第一方面或第一方面的任一种可能的实现方式。
附图说明
图1是本申请实施例提供的一种数据中心容灾备份的应用场景示意图。
图2是本申请实施例提供的一种数据中心的应用结构示例图。
图3是本申请实施例提供的一种计算机装置的应用架构图。
图4是本申请实施例提供的一种带宽利用方法的示意图。
图5是本申请实施例提供的一种新建网络连接带宽调度的示例性流程图。
图6是本申请实施例提供的一种释放网络连接带宽调度的示例性流程图。
图7是本申请实施例提供的一种计算机装置的结构示例图。
图8是本申请实施例提供的另一种计算机装置的结构示例图。
图9是本申请实施例提供的一种计算机设备的结构示例图。
图10是本申请实施例提供的一种计算机程序产品的示例图。
具体实施方式
TCP是一种面向连接的、可靠的、基于字节流的传输层通信协议,是为了在不可靠的互联网络上提供可靠的端到端字节流而专门设计的一个传输协议。互联网络与单个网络有很大的不同,因为互联网络的不同部分可能有截然不同的拓扑结构、带宽、延迟、数据包大小和其他参数,TCP的设计目标是能够动态地适应互联网络的这些特性。针对复杂的网络环境,TCP协议设计了拥塞控制算法来评估网络带宽,并尽量允许利用网络带宽。
为了避免众多TCP连接向网络发送过多数据导致网络拥塞,从而参与网络的所有设备都无法使用网络,TCP的拥塞控制算法的基本原则是加法增大乘法减小(additiveincrease multiplicative decrease,AIMD)。即当网络没有拥塞时,TCP谨慎的缓慢增大向网络发送的数据量,当检查到发生网络拥塞时,激进的快速减少向网络发送的数据量。
TCP拥塞控制主要包括四个部分:
(1)慢启动:每当新建立一个TCP连接时或一个TCP连接发生超时重传后,该连接便进入慢启动阶段。进入慢启动后,TCP发送方将拥塞窗口的大小初始化为一个报文段,即:cwnd=1。此后,每收到一个报文段的确认(ACK),cwnd值按指数增加。当cwnd值超过慢启动阈值(ssthresh)时进入拥塞避免阶段。
(2)拥塞避免:在慢启动阶段,当cwnd值超过慢启动阈值(ssthresh)后,慢启动过程结束,TCP连接进入拥塞避免阶段。在拥塞避免阶段,每一次发送的cwnd个报文段被完全确认后,才将cwnd值加1。在此阶段,cwnd值线性增加。当发生报文段丢失重传时,重新进入慢启动阶段。
(3)快速重传:快速重传是对超时重传的改进。当发送方收到对同一个报文的三个重复确认时,就确定一个报文段已经丢失,因此立刻重传丢失的报文段,而不必等到重传定时器(retransmission timeout,RTO)超时。以此减少不必要的等待时间。
(4)快速恢复:快速恢复是对丢失恢复机制的改进。在快速重传之后,不经过慢启动过程而直接进入拥塞避免阶段。每当快速重传后,置ssthresh=cwnd/2、cwnd=ssthresh+3。此后,每收到一个重复确认,将cwnd值加1,直至收到对丢失报文段和其后若干报文段的累积确认后,置cwnd=ssthresh,进入拥塞避免阶段。
由于TCP的拥塞控制算法是为了适应各种不同的网络环境,对网络环境的评估属于保守评估,并不能充分利用网络带宽,比如在慢启动和拥塞避免阶段,网络带宽并没有用满。而现有的优化方法都是通过各种算法去探测评估网络的带宽,进而更好的利用带宽,但探测评估的结果必然存在误差,只能接近而无法精准评估。
专线是运营商为集团客户提供各种速率的专用链路,直接连接主干网络,可以方便快捷的高速上网。TCP协议是为了在广域网上提供可靠的传输协议,而专线网络通常为高稳定、固定带宽的网络,现有的TCP拥塞控制机制无法充分利用专线带宽。拥塞控制算法的难点在于无法精准评估网络的带宽,而在专线网络中,例如,企业、银行等单独使用的一条独立的网络线路,带宽是固定的,可以直接基于固定带宽构建一种更高效的带宽利用方法。
下面将结合附图,对本申请实施例中的技术方案进行描述。显然,所描述的实施例是本申请的一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本申请保护的范围。
本申请实施例提供的方法可以用于宽带固定的专线网络,例如,企业之间的重要数据交互,金融机构交易数据的传输和数据的容灾备份等。数据容灾指通过建立异地数据中心,做数据的远程备份。当一处数据中心因意外停止工作时,例如火灾、地震等,整个应用系统可以切换到另一处数据中心,使得该系统功能可以继续正常工作。
图1是本申请实施例提供的一种数据中心容灾备份的应用场景示意图。
如图1所示,数据中心A和灾备数据中心C通过专线网络1来同步数据,数据中心B和灾备数据中心C通过专线网络2来同步数据,为了同步所存储的数据,数据中心之间有大量数据需要传输,可以选择多种不同的网络协议来传输数据,例如,TCP协议,流控制传输协议(stream control transmission protocol,SCTP),数据报拥塞控制协议(datagramcongestion control protocol,DCCP)等。
应理解,图1仅是本申请实施例的一个应用示意图。可选的,还可以有多个灾备数据中心对应一个数据中心,或者N个数据中心与N个灾备数据中心一一对应,只需在需要进行备份的数据中心之间建立专线网络即可。
可选的,数据中心和灾备数据中心之间还可以建立多条专线,从而保证数据更加可靠的传输。
图2是本申请实施例提供的一种数据中心的应用结构示例图。
数据中心A包括一个或多个计算机设备,计算机设备可以是服务器等。示例性地,数据中心A可以包括计算机设备002、计算机设备003和计算机设备004。可选的,数据中心A还可以包括网络设备001,网络设备001可以是路由器、交换机或者代理服务器等。
灾备数据中心C可以包括计算机设备006、计算机设备007和计算机设备008。可选的,数据中心C还可以包括网络设备005,网络设备005可以是路由器、交换机或者代理服务器等。
数据中心A和灾备数据中心C之间可以有多个网络连接。当数据中心A中的计算机设备为集中式管理时,数据中心A通过网络设备001来与灾备数据中心C进行网络连接。若数据中心A和灾备数据中心C之间的网络连接发生变化,则对数据中心A中所有网络连接的发送速率进行调整。
当数据中心A中的计算机设备为分布式管理时,数据中心A不需要网络设备来与灾备数据中心C进行网络连接。示例性地,专线网络1的总带宽为1000Mbps,为计算机设备002分配的带宽为500Mbps,为计算机设备003分配的带宽为300Mbps,为计算机设备004分配的带宽为200Mbps,计算机设备002和计算机设备006之间有50个网络连接,计算机设备003和计算机设备008之间有100个网络连接,计算机设备004和计算机设备008之间有80个网络连接。若数据中心A中仅计算机设备002的网络连接发生变化,则可以仅对计算机设备002的网络连接的发送速率进行调整。
图3是本申请实施例提供的一种计算机装置的应用架构图。
以图2为例,应理解,当数据中心A中的计算机设备为集中式管理时,数据中心A中所有计算机设备的所有网络连接都可以通过一个图3所示的计算机装置来进行管理。例如,图3所示的计算机装置可以为图2中的网络设备001。当数据中心A中的计算机设备为分布式管理时,数据中心A中每一个计算机设备都可以有一个图3所示的计算机装置,并通过该计算机装置来对计算机设备各自的网络连接进行管理,或者,数据中心A中每一个计算机设备都可以执行图3所示的计算机装置的功能,即数据中心A中的计算机设备可以为该计算机装置。
如图3所示的计算机装置的应用示例包括网络协议模块100和带宽调度模块110。网络协议模块100包括新建连接请求子模块101,拥塞控制子模块103和释放连接请求子模块105。带宽调度模块110包括新建连接调度子模块112,带宽控制子模块114和释放连接调度子模块116。
网络协议模块100是专线网络使用的网络协议,示例性的,可以是TCP协议,SCTP协议,DCCP协议等。
带宽调度模块110负责监控网络连接并为网络连接分配带宽。由于网络的拥塞控制是基于单个网络连接的,而专线网络中会存在多个网络连接同时进行数据交互,为了避免不同网络连接之间相互竞争导致拥塞,设置带宽调度模块110来为网络连接分配带宽。带宽调度模块110通过调整网络协议模块100中各网络连接的参数来控制各个网络连接的发送速率。
当新建连接请求子模块101向带宽调度模块110发送新建连接事件时,新建连接调度子模块112根据网络连接的权重信息或者总数量,以及专线网络的总带宽来计算每个网络连接的最大发送速率,并发送给带宽控制子模块114。
当释放连接请求子模块105向带宽调度模块110发送连接释放事件时,释放连接调度子模块116根据网络连接的权重信息或者总数量,以及专线网络的总带宽来计算每个网络连接的最大发送速率,并发送给带宽控制子模块114。
带宽控制子模块114通过设定的调整参数和新建连接调度子模块112或者释放连接调度子模块116发来的最大发送速率来修改拥塞控制子模块103的参数从而调整网络连接的发送速率。
应理解,新建连接请求子模块101和释放连接请求子模块105还可以仅将网络连接的权重信息或者总数量等信息发送给带宽控制子模块114,由带宽控制子模块114来计算每个网络连接的最大发送速率。
下面,本申请在图2所示的应用结构示例图的基础上,详细说明带宽利用方法的流程。
图4是本申请实施例提供的一种带宽利用方法的示意图,示例性地,图4为数据中心A在不同时刻的网络连接变化情况。t0时刻数据中心A和灾备数据中心C刚刚建立连接,t1时刻数据中心A新建一个或多个和灾备数据中心C的网络连接,t2时刻数据中心A释放一个或多个和灾备数据中心C的网络连接,t3时刻数据中心A新建网络连接的数量大于释放网络连接的数量,t4时刻数据中心A新建网络连接的数量小于释放网络连接的数量,t5时刻数据中心A新建网络连接的数量等于释放网络连接的数量,t6时刻数据中心A和灾备数据中心C之间的专线网络出现拥塞。
210,初始化网络连接。
t0时刻数据中心A和灾备数据中心C刚刚建立一个或多个网络连接。示例性地,数据中心A和灾备数据中心C的专线网络的总带宽为1000Mbps,刚建立的网络连接总数量为10条,假如每个网络连接的权重都为1,则第i个网络连接的最大发送速率bwi为100Mbps。启动时第i个网络连接以bwi*β的速率发送数据。β为调整参数,0<β<1。示例性地,β为0.8,则每个网络连接的起始发送速率为80Mpbs。
t0时刻之后慢慢增加第i个网络连接的发送速率,当该网络连接的发送速率增长到最大发送速率100Mbps时,不再继续增加发送速率,维持在最大发送速率发送数据。应理解,网络连接的发送速率可以指数级增长也可以线性增长,本申请对此不作限定。
220,新建网络连接。
t1时刻数据中心A新建一个或多个和灾备数据中心C的网络连接。示例性地,数据中心A和灾备数据中心C的专线网络的总带宽为1000Mbps。在t0时刻后、t1时刻前数据中心A和灾备数据中心C的网络连接总数量为10条,t1时刻数据中心A又新建了15条网络连接,此时数据中心A和灾备数据中心C的网络连接的总数量为25条。假如每个网络连接的权重都为1,则t1时刻第i个网络连接的最大发送速率bwi为40Mbps。设置原来的10条网络连接以bwi*β的速率发送数据,β为调整参数,0<β<1。示例性地,β为0.8,则t1时刻设置原来的10条网络连接的发送速率为32Mpbs。
可选的,由于已建立的网络连接已有数据发送到网络中,如果新建的网络连接直接发送较多数据可能会导致网络拥塞,因此将t1时刻新建的15条网络连接的发送速率设置为bwi*β*α,α为调整参数,0<α<1。示例性地,α为0.5,则t1时刻新建的10条网络连接的发送速率为16Mpbs。
t1时刻之后慢慢增加每个网络连接的发送速率,当网络连接的发送速率增长到最大发送速率40Mbps时,不再继续增加发送速率,维持在最大发送速率发送数据。应理解,网络连接的发送速率可以指数级增长也可以线性增长,本申请对此不作限定。
可选的,还可以将原有的10条网络连接的发送速率从原来的最大发送速率100Mbps慢慢降至更新后的最大发送速率40Mpbs,令t1时刻新建的15条网络连接的发送速率慢慢从0增加至最大发送速率40Mpbs。
230,释放网络连接。
t2时刻数据中心A释放一个或多个和灾备数据中心C的网络连接。示例性地,数据中心A和灾备数据中心C的专线网络的总带宽为1000Mbps。在t1时刻后、t2时刻前数据中心A和灾备数据中心C的网络连接总数量为25条,t1时刻数据中心A释放了5条网络连接,此时数据中心A和灾备数据中心C的网络连接的总数量为20条。假如每个网络连接的权重都为1,则t2时刻第i个网络连接的最大发送速率bwi为50Mbps。设置每个网络连接以bwi*β的速率发送数据,β为调整参数,0<β<1。示例性地,β为0.8,则t2时刻设置第i个网络连接的发送速率为40Mpbs。
t2时刻之后慢慢增加每个网络连接的发送速率,当网络连接的发送速率增长到最大发送速率50Mbps时,不再继续增加发送速率,维持在最大发送速率发送数据。应理解,网络连接的发送速率可以指数级增长也可以线性增长,本申请对此不作限定。
240,新建连接数量>释放连接数量。
t3时刻数据中心A新建网络连接的数量大于释放网络连接的数量。示例性地,数据中心A和灾备数据中心C的专线网络的总带宽为1000Mbps。在t2时刻后、t3时刻前数据中心A和灾备数据中心C的网络连接总数量为20条,t3时刻数据中心A又新建了15条网络连接,同时又释放了10条网络连接,此时数据中心A和灾备数据中心C的网络连接的总数量为25条。假如每个网络连接的权重都为1,则t3时刻第i个网络连接的最大发送速率bwi为40Mbps。可以设置原来的10条网络连接以bwi*β的速率发送数据,β为调整参数,0<β<1。示例性地,β为0.8,则t1时刻设置原来的10条网络连接的发送速率为32Mpbs。
可选的,可以将t3时刻新建的15条网络连接的发送速率设置为bwi*β*α,α为调整参数,0<α<1。示例性地,α为0.5,则t3时刻新建的15条网络连接的发送速率为16Mpbs。
t3时刻之后慢慢增加每个网络连接的发送速率,当网络连接的发送速率增长到最大发送速率40Mbps时,不再继续增加发送速率,维持在最大发送速率发送数据。应理解,网络连接的发送速率可以指数级增长也可以线性增长,本申请对此不作限定。
可选的,还可以将原有的10条网络连接的发送速率从原来的最大发送速率50Mbps慢慢降至更新后的最大发送速率40Mpbs,令t3时刻新建的15条网络连接的发送速率慢慢从v增加至最大发送速率40Mpbs,v的取值范围为0至(1000-10*50)/15Mpbs。
250,新建连接数量<释放连接数量。
t4时刻数据中心A新建网络连接的数量小于释放网络连接的数量。示例性地,数据中心A和灾备数据中心C的专线网络的总带宽为1000Mbps。在t3时刻后、t4时刻前数据中心A和灾备数据中心C的网络连接总数量为25条,t4时刻数据中心A又新建了5条网络连接,同时又释放了10条网络连接,此时数据中心A和灾备数据中心C的网络连接的总数量为20条。假如每个网络连接的权重都为1,则t4时刻第i个网络连接的最大发送速率bwi为50Mbps。可以设置原来的15条网络连接以bwi*β的速率发送数据,β为调整参数,0<β<1。示例性地,β为0.8,则t4时刻可以设置原来的15条网络连接的发送速率为40Mpbs。
可选的,可以将t4时刻新建的5条网络连接的发送速率设置为bwi*β*α,α为调整参数,0<α<1。示例性地,α为0.5,则t3时刻新建的5条网络连接的发送速率为20Mpbs。
t4时刻之后慢慢增加每个网络连接的发送速率,当网络连接的发送速率增长到最大发送速率50Mbps时,不再继续增加发送速率,维持在最大发送速率发送数据。应理解,网络连接的发送速率可以指数级增长也可以线性增长,本申请对此不作限定。
可选的,还可以将原有的15条网络连接的发送速率从原来的最大发送速率40Mbps慢慢增加至更新后的最大发送速率50Mpbs,令t4时刻新建的5条网络连接的发送速率慢慢从20Mpbs增加至最大发送速率50Mpbs。
260,新建连接数量=释放连接数量。
t5时刻数据中心A新建网络连接的数量等于释放网络连接的数量。示例性地,数据中心A和灾备数据中心C的专线网络的总带宽为1000Mbps。在t4时刻后、t5时刻前数据中心A和灾备数据中心C的网络连接总数量为20条,t5时刻数据中心A又新建了5条网络连接,同时又释放了5条网络连接,此时数据中心A和灾备数据中心C的网络连接的总数量依然为20条。假如第一网络连接的权重为2,第二网络连接的权重为6,第一网络连接为t5时刻数据中心A新建的网络连接,第二网络连接为t5时刻数据中心A释放的网络连接,其他每个网络连接的权重都为1。在t4时刻后、t5时刻前第二网络连接的最大发送速率为(1000*6/25)=240Mbps,其他19条权重为1的网络连接的最大发送速率为40Mbps。则t5时刻第一网络连接的最大发送速率为(1000*2/21)Mbps,其他19条权重为1的网络连接的最大发送速率为(1000*1/21)Mbps。
t5时刻第i个网络连接的最大发送速率为bwi。可以设置每条网络连接以bwi*β的速率发送数据,β为调整参数,0<β<1。示例性地,β为0.8,则t5时刻可以设置第一网络连接的发送速率为(1000*2/21)*0.8Mpbs,其他19条权重为1的网络连接的最大发送速率为(1000*1/21)*0.8Mbps。
可选的,可以将t5时刻新建的5条网络连接的发送速率设置为bwi*β*α,α为调整参数,0<α<1。示例性地,α为0.5,则t5时刻可以设置第一网络连接的发送速率为(1000*2/21)*0.8*0.5Mpbs,其他4条权重为1的网络连接的最大发送速率为(1000*1/21)*0.8*0.5Mbps。
t5时刻之后慢慢增加或者降低每个网络连接的发送速率至最大发送速率,并维持在最大发送速率发送数据。应理解,网络连接的发送速率可以指数级变化也可以线性变化,本申请对此不作限定。
可选的,还可以将原有的15条网络连接的发送速率从原来的最大发送速率40Mbps慢慢增加至更新后的最大发送速率(1000*1/21)Mpbs,令t5时刻新建的5条网络连接的发送速率慢慢从bwi*β*α增加至最大发送速率。
270,网络拥塞。
t7时刻网络出现拥塞。示例性地,网络连接连续收到对同一个报文的三个重复确认或者重传定时器超时等。将数据中心A的网络连接的发送速率重新设置为bwi*β,然后逐渐增长至最大发送速率。
示例性地,数据中心A和灾备数据中心C的专线网络的总带宽为1000Mbps。在t5时刻后、t6时刻前数据中心A的所有20条网络连接都在以最大发送速率50Mpbs发送数据,且每条网络连接的权重都为1,则在t6时刻网络遇到拥塞时,直接将每条网络连接的发送速率设置为bwi*β,β为调整参数,0<β<1。示例性地,β为0.8,则t6时刻设置原来的20条网络连接的发送速率为40Mpbs。
应理解,还可以根据网络连接的重要程度来调整网络连接的发送速率。当网络发生拥塞时,若某些网络连接比较重要,可以不降低该网络连接的发送速率,只降低重要等级小于预设阈值的网络连接,从而可以在发生网络拥塞时也能够保障重要数据的传输。
以上实施例为数据中心A中的计算机设备为集中式管理时的情况。应理解,当数据中心A中的计算机设备为分布式管理时,数据中心A中每一个计算机设备都可以有一个图3所示的计算机装置,并通过该计算机装置来对计算机设备各自的网络连接进行管理。
示例性地,专线网络1的总带宽为1000Mbps,为计算机设备002分配的带宽为500Mbps,为计算机设备003分配的带宽为300Mbps,为计算机设备004分配的带宽为200Mbps。t0时刻计算机设备002和灾备数据中心C之间有60个网络连接,t1时刻计算机设备002释放了和灾备数据中心C之间的10条网络连接,此时计算机设备002和灾备数据中心C的网络连接的总数量为50条。假如每个网络连接的权重都为1,则t1时刻网络连接释放后计算机设备002中第i个网络连接的最大发送速率bwi为500/50=10Mbps。设置每个网络连接以bwi*β的速率发送数据,β为调整参数,0<β<1。示例性地,β为0.8,则t1时刻网络连接释放后可以设置计算机设备002第i个网络连接的发送速率为8Mpbs,之后慢慢增加计算机设备002每个网络连接的发送速率,当网络连接的发送速率增长到最大发送速率10Mbps时,不再继续增加发送速率,维持在最大发送速率发送数据。
分布式管理和集中式管理的区别仅在于分布式管理时的带宽利用方法可以对数据中心A中的单个计算机设备的网络连接进行管理,而不是所有计算机设备的网络连接统一管理。分布式管理中其他网络连接变化情况对网络连接发送速率的调整和上述实施例中集中式管理的情况类似,本申请不再重复赘述。
下面,本申请在图3所示的应用架构示例的基础上,详细说明新建网络连接时和释放网络连接时各模块的交互和工作流程。
图5是本申请实施例提供的一种新建网络连接带宽调度的示例性流程图。
310,计算网络连接的最大发送速率。
当收到新建网络连接事件时,带宽调度模块110可以根据新建网络连接后计算机设备的网络连接总数量和专线网络总带宽bw,计算每个网络连接的最大发送速率bwi,其中bwi为第i个网络连接的最大发送速率。可以用专线网络的总带宽除以网络连接总数量得到bwi。示例性地,专线网络的总带宽为1000Mbps,网络连接总数量为10条,则每个网络连接的最大发送速率bwi为100Mbps。可选的,还可以利用每个网络连接的权重信息和专线网络的总带宽bw得到每个网络连接的最大发送速率。示例性地,若第一网络连接的权重占计算机设备新建网络连接后所有网络连接总权重的比例为0.2,专线网络的总带宽为1000Mbps,则第一网络连接的最大发送速率bw1为200Mbps。
320,修改原网络连接的参数。
对于计算机设备在收到新建网络连接事件前已建立的网络连接,带宽控制子模块114直接把参数(bwi,β)发送给拥塞控制子模块103进行带宽调整,减少发送速率。bwi为这个网络连接的最大发送速率,β为调整参数,0<β<1。示例性地,bwi为100Mpbs,β为0.9,则计算机设备新建网络连接后将该网络连接的发送速率设置为90Mpbs,并逐渐增加该网络连接的发送速率至最大发送速率bwi。
330,修改新建网络连接的参数。
针对本次计算机设备新建的网络连接,考虑到已建立的网络连接已有数据发送到网络中,如果新建的网络连接直接发送较多数据可能会导致网络拥塞,因此将新建的网络连接参数设置为(bwi,β*α),α也是调整参数,0<α<1。示例性地,bwi为100Mpbs,β为0.9,α为0.5,则计算机设备新建的网络连接的发送速率设置为45Mpbs,并逐渐增加该网络连接的发送速率至最大发送速率bwi。
340,更新新建网络连接的参数。
计算机设备新建的网络连接根据(bwi,β*α)的参数设置发送数据,等待指定时间后,例如,5秒后,更新新建的网络连接的参数为(bwi,β)。若此时该网络连接的发送速率小于bwi,逐渐增加该网络连接的发送速率至最大发送速率bwi。遇到网络拥塞,可以直接根据参数(bwi,β)将该网络连接的发送速率设置为bwi*β。
若在新建的网络连接更新参数之前发生网络拥塞,即新建的网络连接根据(bwi,β*α)的参数设置发送数据,则调整该网络连接的发送速率为bwi*β*α。
图6是本申请实施例提供的一种释放网络连接带宽调度的示例性流程图。
410,计算网络连接的最大发送速率。
当收到释放网络连接事件时,带宽调度模块110可以根据释放网络连接后计算机设备的网络连接总数量和专线网络总带宽bw,计算每个网络连接的最大发送速率bwi,其中bwi为第i个网络连接的最大发送速率。可以用专线网络的总带宽除以网络连接总数量得到bwi。示例性地,专线网络的总带宽为1000Mbps,网络连接总数量为5条,则每个网络连接的最大发送速率bwi为200Mbps。可选的,还可以利用每个网络连接的权重信息和专线网络的总带宽bw得到每个网络连接的最大发送速率。示例性地,若第一网络连接的权重占计算机设备释放网络连接后所有网络连接总权重的比例为0.4,专线网络的总带宽为1000Mbps,则第一网络连接的最大发送速率bw1为400Mbps。
420,修改网络连接的参数。
由于释放网络连接后,每个网络连接的最大发送速率会相应增加,因此带宽控制子模块114直接把参数(bwi,β)发送给拥塞控制子模块103进行带宽调整,增加每个网络连接的发送速率。释放网络连接时,不需要像新建网络连接那样分2步控制拥塞参数。
本申请实施例提供的的带宽利用方法可以包括如下几个阶段:
(1)初始化:整个计算机设备的网络连接刚建立,先根据专线网络的总带宽和网络连接总数量,或者专线网络的总带宽和网络连接的权重信息得到网络连接的最大发送速率bwi,再根据bwi和调整参数来设置网络连接i的起始发送速度。
其中,带宽利用方法的初始化基本代码如下:
(2)启动:只要没有检测到报文乱序或丢失,就持续增大发送速率,直到达到网络连接的最大发送速率。
(3)恢复:如果连续收到3个乱序报文,进入恢复状态,调用Init算法来重新设置发送窗口。
(4)丢包:网络拥塞导致丢包后,调用Init算法来重新设置发送窗口。
以上描述了根据本申请实施例的带宽利用方法,下面分别结合图7和图8描述根据本申请实施例的装置和设备。
本申请实施例还提供了一种计算机存储介质,该计算机存储介质中存储有程序指令,所述程序执行时可包括如图4、图5、图6对应实施例中的带宽利用方法的部分或全部步骤。
图7为本申请实施例提供的一种计算机装置的结构示例图。该计算机装置1000包括获取模块1010和处理模块1020。
其中,获取模块1010,用于获取网络连接信息和所述专线网络的总带宽、第一调整参数、第二调整参数、第三调整参数和网络连接的重要等级,执行图4方法中的210至270。
处理模块1020,用于根据网络连接信息、专线网络的总带宽和调整参数,确定网络连接的最大发送速率、第一发送速率、第二发送速率和第三发送速率。执行图4的方法、图5的方法、图6的方法中的部分或全部步骤。
图8为本申请实施例提供的另一种计算机装置1300的结构示例图。计算机装置1300包括处理器1302、通信接口1303和存储器1304。计算机装置1300可以是计算机设备,也可以是计算机设备中的部件,例如芯片或网络接口卡(network interface card,NIC)等。示例性地,如图2所示,若数据中心A是分布式管理,计算机装置1300可以是图2中的计算机设备002-004中的一个计算机设备或者计算机设备中的部件。若数据中心A是集中式管理,计算机装置1300可以是图2中的网络设备001或网络设备001中的部件。
图9是分布式管理时本申请实施例提供的一种计算机设备的结构示例图。计算机设备900至少包括处理器910、内存920、网卡930和硬盘940。处理器910、内存920、网卡930和硬盘940之间通过总线连接。其中,处理器910和内存920用于提供计算资源。处理器910用于处理来自计算机设备900外部(其他计算机设备或服务器)的数据访问请求,也用于计算机设备900内部生成的请求。示例性的,处理器910接收写数据请求时,会将这些写数据请求中的数据暂时保存在内存920中。当内存920中的数据总量达到一定阈值时,处理器910将内存920中存储的数据发送给硬盘940进行持久化存储。内存920是指与处理器直接交换数据的内部存储器,它可以随时读写数据,而且速度很快。硬盘940用于提供存储资源,例如存储数据。它可以是磁盘或者其他类型的存储介质,例如固态硬盘或者叠瓦式磁记录硬盘等。网卡930用于与其他计算机设备通信。在一些实施例中,图8所示的计算机装置1300可以是图9的网卡930。
上述本申请实施例揭示的方法可以应用于处理器1302中,或者由处理器1302实现。处理器1302可以是中央处理器(central processing unit,CPU),还可以是其他通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(applicationspecific integrated circuit,ASIC)、现场可编程门阵列(field programmable gatearray,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者是任何常规的处理器等。在实现过程中,上述方法的各步骤可以通过处理器1302中的硬件的集成逻辑电路或者软件形式的指令完成。可以实现或者执行本申请实施例中的公开的各方法、步骤及逻辑框图。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。结合本申请实施例所公开的方法的步骤可以直接体现为硬件译码处理器执行完成,或者用译码处理器中的硬件及软件模块组合执行完成。
存储器1304可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rate SDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(direct rambus RAM,DRRAM)。应注意,本文描述的系统和方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。
处理器1302、存储器1304和通信接口1303之间可以通过总线通信。存储器1304中存储有可执行代码,处理器1302读取存储器1304中的可执行代码以执行对应的方法。存储器1304中还可以包括操作系统等其他运行进程所需的软件模块。操作系统可以为LINUXTM,UNIXTM,WINDOWSTM等。
例如,存储器1304中的可执行代码用于实现图4、图5、图6所示的方法,处理器1302读取存储器1304中的该可执行代码以执行图4、图5、图6所示的方法。
在本申请的一些实施例中,所公开的方法可以实施为以机器可读格式被编码在计算机可读存储介质上的或者被编码在其它非瞬时性介质或者制品上的计算机程序指令。图10示意性地示出根据这里展示的至少一些实施例而布置的示例计算机程序产品的概念性局部视图,所述示例计算机程序产品包括用于在计算设备上执行计算机进程的计算机程序。在一个实施例中,示例计算机程序产品1400是使用信号承载介质1401来提供的。所述信号承载介质1401可以包括一个或多个程序指令1402,其当被一个或多个处理器运行时可以提供以上针对图4、图5、图6所示的方法中描述的功能或者部分功能。因此,例如,参考图4、图5、图6中所示的实施例,其中的一个或多个特征可以由与信号承载介质1401相关联的一个或多个指令来承担。
在一些示例中,信号承载介质1401可以包含计算机可读介质1403,诸如但不限于,硬盘驱动器、紧密盘(CD)、数字视频光盘(DVD)、数字磁带、存储器、只读存储记忆体(read-only memory,ROM)或随机存储记忆体(random access memory,RAM)等等。在一些实施方式中,信号承载介质1401可以包含计算机可记录介质1404,诸如但不限于,存储器、读/写(R/W)CD、R/W DVD、等等。在一些实施方式中,信号承载介质1401可以包含通信介质1405,诸如但不限于,数字和/或模拟通信介质(例如,光纤电缆、波导、有线通信链路、无线通信链路、等等)。因此,例如,信号承载介质1401可以由无线形式的通信介质1405(例如,遵守IEEE802.11标准或者其它传输协议的无线通信介质)来传达。一个或多个程序指令1402可以是,例如,计算机可执行指令或者逻辑实施指令。在一些示例中,前述的计算设备可以被配置为,响应于通过计算机可读介质1403、计算机可记录介质1404、和/或通信介质1405中的一个或多个传达到计算设备的程序指令1402,提供各种操作、功能、或者动作。应该理解,这里描述的布置仅仅是用于示例的目的。因而,本领域技术人员将理解,其它布置和其它元素(例如,机器、接口、功能、顺序、和功能组等等)能够被取而代之地使用,并且一些元素可以根据所期望的结果而一并省略。另外,所描述的元素中的许多是可以被实现为离散的或者分布式的组件的、或者以任何适当的组合和位置来结合其它组件实施的功能实体。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (14)
1.一种带宽利用方法,其特征在于,包括:
确定计算机设备的网络连接发生变化,所述计算机设备通过专线网络与其他计算机设备进行通信;
获取网络连接信息,所述网络连接信息用于指示网络连接变化后的第一网络连接的最大发送速率,所述第一网络连接属于第一连接集合且属于第二连接集合,所述第一连接集合由所述计算机设备的网络连接发生变化前的网络连接组成,所述第二连接集合由所述计算机设备的网络连接发生变化后的网络连接组成;
根据所述网络连接信息,重新确定所述第一网络连接的最大发送速率;
调整所述第一网络连接的发送速率至所述最大发送速率。
2.根据权利要求1所述的方法,其特征在于,所述调整所述第一网络连接的发送速率至所述最大发送速率,包括:
获取第一调整参数,所述第一调整参数大于0小于1;
根据所述最大发送速率和所述第一调整参数确定所述第一网络连接的第一发送速率,设置所述第一网络连接的发送速率为所述第一发送速率;
增加所述第一网络连接的发送速率至所述最大发送速率。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
设置第二网络连接的发送速率为第二发送速率,所述第二发送速率小于所述第一发送速率,所述第二网络连接属于所述第二连接集合且不属于所述第一连接集合;
增加所述第二网络连接的发送速率至所述第一发送速率。
4.根据权利要求1至3任一项所述的方法,其特征在于,所述方法还包括:
确定所述计算机设备的网络发生拥塞;
设置所述第一网络连接的发送速率为第三发送速率,所述第三发送速率小于所述最大发送速率。
5.根据权利要求4所述的方法,其特征在于,在所述设置所述第一网络连接的发送速率为第三发送速率之前,所述方法还包括:
获取所述第一网络连接的重要等级;
确定所述重要等级小于等于预设阈值。
6.根据权利要求1至5任一项所述的方法,其特征在于,所述网络连接信息包括所述专线网络的总带宽和所述网络连接变化后的网络连接的总数量,或者,所述网络连接信息包括所述专线网络的总带宽和所述第一网络连接的权重信息。
7.一种计算机装置,其特征在于,包括:
处理模块,用于确定计算机装置的网络连接发生变化,所述计算机装置通过专线网络与其他计算机装置进行通信;
获取模块,用于获取网络连接信息,所述网络连接信息用于指示网络连接变化后的第一网络连接的最大发送速率,所述第一网络连接属于第一连接集合且属于第二连接集合,所述第一连接集合由所述计算机装置的网络连接发生变化前的网络连接组成,所述第二连接集合由所述计算机装置的网络连接发生变化后的网络连接组成;
所述处理模块,还用于根据所述网络连接信息,重新确定所述第一网络连接的最大发送速率;
所述处理模块,还用于调整所述第一网络连接的发送速率至所述最大发送速率。
8.根据权利要求7所述的装置,其特征在于,所述获取模块,还用于获取第一调整参数,所述第一调整参数大于0小于1;
所述处理模块,还用于根据所述最大发送速率和所述第一调整参数确定所述第一网络连接的第一发送速率,设置所述第一网络连接的发送速率为所述第一发送速率;
所述处理模块,还用于增加所述第一网络连接的发送速率至所述最大发送速率。
9.根据权利要求8所述的装置,其特征在于,所述处理模块,还用于设置第二网络连接的发送速率为第二发送速率,所述第二发送速率小于所述第一发送速率,所述第二网络连接属于所述第二连接集合且不属于所述第一连接集合;
所述处理模块,还用于增加所述第二网络连接的发送速率至所述第一发送速率。
10.根据权利要求7至9任一项所述的装置,其特征在于,所述处理模块,还用于确定所述计算机设备的网络发生拥塞;
所述处理模块,还用于设置所述第一网络连接的发送速率为第三发送速率,所述第三发送速率小于所述最大发送速率。
11.根据权利要求10所述的装置,其特征在于,所述获取模块,还用于获取所述第一网络连接的重要等级;
所述处理模块,还用于确定所述重要等级小于等于预设阈值。
12.一种计算机设备,其特征在于,包括:处理器,所述处理器用于与存储器耦合,读取并执行所述存储器中的指令和/或程序代码,以执行如权利要求1-6中任一项所述的方法。
13.一种芯片系统,其特征在于,包括:逻辑电路,所述逻辑电路用于与输入/输出接口耦合,通过所述输入/输出接口传输数据,以执行如权利要求1-6中任一项所述的方法。
14.一种计算机可读介质,其特征在于,所述计算机可读介质存储有程序代码,当所述计算机程序代码在计算机上运行时,使得计算机执行如权利要求1-6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210122756.8A CN116614441A (zh) | 2022-02-09 | 2022-02-09 | 带宽利用方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210122756.8A CN116614441A (zh) | 2022-02-09 | 2022-02-09 | 带宽利用方法和装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116614441A true CN116614441A (zh) | 2023-08-18 |
Family
ID=87682391
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210122756.8A Pending CN116614441A (zh) | 2022-02-09 | 2022-02-09 | 带宽利用方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116614441A (zh) |
-
2022
- 2022-02-09 CN CN202210122756.8A patent/CN116614441A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11876714B2 (en) | Method and apparatus for network congestion control based on transmission rate gradients | |
KR101143172B1 (ko) | 웹 서비스를 위한 신뢰성 있는 메시징 프로토콜을 이용한메시지의 효율적인 전송 | |
US7876678B2 (en) | Congestion control for signalling transport protocols | |
US8873385B2 (en) | Incast congestion control in a network | |
US20050213507A1 (en) | Dynamically provisioning computer system resources | |
US7577097B2 (en) | Compound transmission control protocol | |
US7839787B2 (en) | Delay-based overflow routing in communication systems | |
US20080239953A1 (en) | Method and apparatus for minimizing congestion in gateways | |
JP2018508151A (ja) | 伝送制御プロトコルtcpデータパケットを送信する方法及び装置、並びにシステム | |
US7649909B1 (en) | Adaptive tunnel transport protocol | |
US20140355442A1 (en) | Communication device | |
KR20060043648A (ko) | 스퓨리어스 타임아웃에 대한 응답 방법 | |
KR20120004961A (ko) | 송신 제어 프로토콜을 사용하여 높은 레이턴시 및 패킷 드랍을 갖는 네트워크에서의 대역폭 활용을 최대화하는 방법 | |
US8416694B2 (en) | Network feedback method and device | |
US20130170342A1 (en) | Data communication systems and methods | |
US7764616B2 (en) | Transmitter device for controlling data transmission | |
US20030128672A1 (en) | Transmission and flow control | |
CN104683259A (zh) | Tcp拥塞控制方法及装置 | |
CN106789702A (zh) | 控制tcp传输性能的方法及装置 | |
CN116614441A (zh) | 带宽利用方法和装置 | |
RU2366095C2 (ru) | Управление потоком данных с дублированным подтверждением | |
CN116886616A (zh) | 基于tcp的拥塞控制方法、装置、电子设备和存储介质 | |
KR20140128849A (ko) | 패킷 송수신을 제어하는 망연동장치 및 방법 | |
CN117278654A (zh) | 基于tcp-bpf的动态网络自适应修改方法 | |
JP2006100919A (ja) | Tcpコネクション中継方法およびtcpコネクション中継装置 |
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 |