CN113300971A - 数据处理***及方法 - Google Patents
数据处理***及方法 Download PDFInfo
- Publication number
- CN113300971A CN113300971A CN202110162707.2A CN202110162707A CN113300971A CN 113300971 A CN113300971 A CN 113300971A CN 202110162707 A CN202110162707 A CN 202110162707A CN 113300971 A CN113300971 A CN 113300971A
- Authority
- CN
- China
- Prior art keywords
- time
- congestion control
- sending
- module
- sending end
- 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.)
- Granted
Links
- 238000012545 processing Methods 0.000 title claims abstract description 73
- 238000000034 method Methods 0.000 title claims abstract description 32
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 169
- 230000005540 biological transmission Effects 0.000 claims abstract description 94
- 238000004364 calculation method Methods 0.000 claims abstract description 20
- 230000004044 response Effects 0.000 claims description 43
- 238000003672 processing method Methods 0.000 claims description 31
- 238000010586 diagram Methods 0.000 description 12
- 230000008569 process Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 11
- 230000007246 mechanism Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- 230000006978 adaptation Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000005538 encapsulation Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002265 prevention Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 239000004984 smart glass Substances 0.000 description 1
Images
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/25—Flow control; Congestion control with rate being modified by the source upon detecting a change of network conditions
-
- 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/27—Evaluation or update of window size, e.g. using information derived from acknowledged [ACK] packets
-
- 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/28—Flow control; Congestion control in relation to timing considerations
- H04L47/283—Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
-
- 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/32—Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本说明书提供数据处理***及方法,其中所述数据处理***包括:计算模块,确定模块,配置模块;所述计算模块,被配置为获取用户上传的创建请求,根据所述创建请求获取发送端的第一时间信息以及接收端的第二时间信息;根据所述第一时间信息和所述第二时间信息计算网络往返时间,并发送至所述用户;所述确定模块,被配置为接收所述用户基于所述网络往返时间创建的拥塞控制算法,并根据所述拥塞控制算法向所述配置模块发送拥塞控制信号;所述配置模块,被配置为基于所述拥塞控制信号生成配置请求,并发送至所述发送端;所述配置请求用于在所述发送端的传输模块配置所述拥塞控制算法。
Description
技术领域
本说明书涉及计算机技术领域,特别涉及数据处理***及方法。
背景技术
随着互联网技术的发展,RDMA(Remote Direct Memory Access,远程直接数据存取)作为数据中心新一代高性能网络协议已经在各服务方之间得到广泛的应用,而拥塞控制作为网络流量的管控节点,在不可靠的IP网络中对整个网络传输性能至关重要;目前的RDMA拥塞控制包括基于丢包/RTT(Round-Trip Time,网络往返时间)等方式实现,采用的控制算法多为将DCQCN(Data Center Quantized Congestion Notification)来作为拥塞控制算法,但是该算法参数较多,原理复杂,不便于部署和调试,用户可以选择的空间很小,因此亟需一种有效的方案以解决上述问题。
发明内容
有鉴于此,本说明书实施例提供了一种数据处理***。本说明书同时涉及两种数据处理方法,一种数据处理装置,一种计算设备,以及一种计算机可读存储介质,以解决现有技术中存在的技术缺陷。
根据本说明书实施例的第一方面,提供了一种数据处理***,包括:
计算模块,确定模块,配置模块;
所述计算模块,被配置为获取用户上传的创建请求,根据所述创建请求获取发送端的第一时间信息以及接收端的第二时间信息;根据所述第一时间信息和所述第二时间信息计算网络往返时间,并发送至所述用户;
所述确定模块,被配置为接收所述用户基于所述网络往返时间创建的拥塞控制算法,并根据所述拥塞控制算法向所述配置模块发送拥塞控制信号;
所述配置模块,被配置为基于所述拥塞控制信号生成配置请求,并发送至所述发送端;所述配置请求用于在所述发送端的传输模块配置所述拥塞控制算法。
可选地,所述计算模块,进一步被配置为:
对所述第一时间信息进行解析获得所述发送端的发送时间和响应时间;对所述第二时间信息进行解析获得所述接收端的接收时间和触发时间;根据所述发送时间、所述响应时间、所述接收时间和所述触发时间计算所述网络往返时间。
可选地,所述计算模块,进一步被配置为:
计算所述响应时间和所述发送时间二者的差值,获得发送端时间差;计算所述触发时间和所述接收时间二者的差值,获得接收端时间差;根据所述发送端时间差和所述接收端时间差计算所述网络往返时间。
可选地,所述确定模块,进一步被配置为:
根据所述拥塞控制算法向所述配置模块发送拥塞控制窗口或拥塞控制速率;
相应的,所述配置模块,进一步被配置为:
基于所述拥塞控制窗口或所述拥塞控制速率生成所述配置请求,并发送至所述发送端。
可选地,还包括:
接收信息模块,被配置为接收所述用户上传的重传调整信息,根据所述重传调整信息生成重传调整信号并发送至所述配置模块。
可选地,所述配置模块,还被配置为:
根据所述拥塞控制信号和所述重传调整信号生成目标配置请求;将所述目标配置请求发送至所述发送端;所述目标配置请求用于在所述发送端的传输模块配置包含所述重传调整信息的拥塞控制算法。
可选地,所述配置模块,还被配置为:
确定所述拥塞控制算法对应的配置代码,并对所述配置代码进行封装获得拥塞控制包;基于所述拥塞控制包生成所述配置请求,并将所述配置请求发送至所述发送端。
根据本说明书实施例的第二方面,提供了一种数据处理方法,包括:
计算模块获取用户上传的创建请求,根据所述创建请求获取发送端的第一时间信息以及接收端的第二时间信息,根据所述第一时间信息和所述第二时间信息计算网络往返时间,并发送至所述用户;
确定模块接收所述用户基于所述网络往返时间创建的拥塞控制算法,并根据所述拥塞控制算法向所述配置模块发送拥塞控制信号;
配置模块基于所述拥塞控制信号生成配置请求,并发送至所述发送端;所述配置请求用于在所述发送端的传输模块配置所述拥塞控制算法。
根据本说明书实施例的第三方面,提供了另一种数据处理方法,包括:
获取用户上传的创建请求,根据所述创建请求获取发送端的第一时间信息以及接收端的第二时间信息;
根据所述第一时间信息和所述第二时间信息计算网络往返时间,并将所述网络往返时间发送至所述用户;
接收所述用户基于所述网络往返时间创建的拥塞控制算法,并根据所述拥塞控制算法创建拥塞控制信号;
基于所述拥塞控制信号生成配置请求,并发送至所述发送端,所述配置请求用于在所述发送端的传输模块配置所述拥塞控制算法。
可选地,所述根据所述第一时间信息和所述第二时间信息计算网络往返时间,包括:
对所述第一时间信息进行解析获得所述发送端的发送时间和响应时间,以及对所述第二时间信息进行解析获得所述接收端的接收时间和触发时间;
根据所述发送时间、所述响应时间、所述接收时间和所述触发时间计算所述网络往返时间。
可选地,所述根据所述发送时间、所述响应时间、所述接收时间和所述触发时间计算所述网络往返时间,包括:
计算所述响应时间和所述发送时间二者的差值,获得发送端时间差,以及计算所述触发时间和所述接收时间二者的差值,获得接收端时间差;
根据所述发送端时间差和所述接收端时间差计算所述网络往返时间。
可选地,所述根据所述拥塞控制算法创建拥塞控制信号,包括:
根据所述拥塞控制算法创建拥塞控制窗口或拥塞控制速率;
相应的,所述基于所述拥塞控制信号生成配置请求,并发送至所述发送端,包括:
基于所述拥塞控制窗口或所述拥塞控制速率生成所述配置请求,并发送至所述发送端。
可选地,还包括:
接收所述用户上传的重传调整信息,根据所述重传调整信息生成重传调整信号。
可选地,还包括:
根据所述拥塞控制信号和所述重传调整信号生成目标配置请求;
将所述目标配置请求发送至所述发送端;所述目标配置请求用于在所述发送端的传输模块配置包含所述重传调整信息的拥塞控制算法。
可选地,所述基于所述拥塞控制算法生成配置请求,并发送至所述发送端,包括:
确定所述拥塞控制算法对应的配置代码,并对所述配置代码进行封装获得拥塞控制包;
基于所述拥塞控制包生成所述配置请求,并将所述配置请求发送至所述发送端。
根据本说明书实施例的第四方面,提供了一种数据处理装置,包括:
获取单元,被配置为获取用户上传的创建请求,根据所述创建请求获取发送端的第一时间信息以及接收端的第二时间信息;
计算单元,被配置为根据所述第一时间信息和所述第二时间信息计算网络往返时间,并将所述网络往返时间发送至所述用户;
接收单元,被配置为接收所述用户基于所述网络往返时间创建的拥塞控制算法,并根据所述拥塞控制算法向所述配置模块发送拥塞控制信号;
发送单元,被配置为基于所述拥塞控制信号生成配置请求,并发送至所述发送端;所述配置请求用于在所述发送端的传输模块配置所述拥塞控制算法。
根据本说明书实施例的第五方面,提供了一种计算设备,包括:
存储器和处理器;
所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令:
获取用户上传的创建请求,根据所述创建请求获取发送端的第一时间信息以及接收端的第二时间信息;
根据所述第一时间信息和所述第二时间信息计算网络往返时间,并将所述网络往返时间发送至所述用户;
接收所述用户基于所述网络往返时间创建的拥塞控制算法,并根据所述拥塞控制算法创建拥塞控制信号;
基于所述拥塞控制信号生成配置请求,并发送至所述发送端,所述配置请求用于在所述发送端的传输模块配置所述拥塞控制算法。
根据本说明书实施例的第六方面,提供了一种计算机可读存储介质,其存储有计算机可执行指令,该指令被处理器执行时实现所述数据处理方法的步骤。
本实施例提供的数据处理***,该***包括计算模块、确定模块和配置模块,所述计算模块用于根据用户的创建请求,计算当前接收端和发送端之间的网络往返时间,之后确定模块根据用户输入完成的拥塞控制算法,向所述配置模块发送所述拥塞控制算法反馈的信号,所述配置模块将接收确定模块反馈的信号,并根据该信号进行拥塞控制算法的配置,实现发送端在与接收端进行网络传输时,可以根据用户的需求进行拥塞管控,不仅可以根据使用需求调整拥塞窗口、网络传输速率等功能,还能够保证传输有效性,从而满足用户的使用需求。
附图说明
图1是本说明书一实施例提供的一种数据处理***的结构示意图;
图2是本说明书一实施例提供的一种数据处理***的示意图;
图3是本说明书一实施例提供的一种数据处理***中网络往返时间测量的示意图;
图4是本说明书一实施例提供的另一种数据处理***的结构示意图;
图5是本说明书一实施例提供的一种数据处理方法的处理流程图;
图6是本说明书一实施例提供的另一种数据处理方法的处理流程图;
图7是本说明书一实施例提供的一种数据处理装置的结构示意图;
图8是本说明书一实施例提供的一种计算设备的结构框图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本说明书。但是本说明书能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本说明书内涵的情况下做类似推广,因此本说明书不受下面公开的具体实施的限制。
在本说明书一个或多个实施例中使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本说明书一个或多个实施例。在本说明书一个或多个实施例和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本说明书一个或多个实施例中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本说明书一个或多个实施例中可能采用术语第一、第二等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本说明书一个或多个实施例范围的情况下,第一也可以被称为第二,类似地,第二也可以被称为第一。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
首先,对本说明书一个或多个实施例涉及的名词术语进行解释。
RDMA:(Remote Direct Memory Access,远程直接数据存取)为了解决网络传输中服务器端数据处理的延迟而产生;RDMA通过网络把资料直接传入计算机的存储区,将数据从一个***快速移动到远程***存储器中,而不对操作***造成任何影响,这样就不需要调用过多的计算机的处理功能;RDMA支持三种队列,发送队列(SQ,Send Queue)和接收队列(RQ,Receive Queue),完成队列(CQ,Completion Queue)。其中,发送队列和接收队列通常成对创建,被称为Queue Pairs(QP)。
RC(Reliable Connection,可靠连接):基于面向连接的QP传输服务,一个QP与另一个QP相关联,两者之间的信息传输是可靠的,具体体现在数据的正确性和顺序性。
DCQCN(Data Center Quantized Congestion Notification,拥塞控制算法):数据中心量化拥塞通知,是一种拥塞控制算法,利用交换机对数据包打ECN标记,产生CNP报文来通知发送方网络拥塞状态。
RTT(Round-Trip Time,网络往返时间):在计算机网络中它是一个重要的性能指标,表示从发送端发送数据开始,到发送端收到来自接收端的确认(接收端收到数据后便立即发送确认),总共经历的时延。
在本说明书中,提供了一种数据处理***,本说明书同时涉及两种数据处理方法,一种数据处理装置,一种计算设备,以及一种计算机可读存储介质,在下面的实施例中逐一进行详细说明。
实际应用中,通过DCQCN算法的硬件实现拥塞控制,是RDMA中应用较为广泛的一种方式,然而,由于该算法参数较多,原理复杂并且不便于部署和调试,用户可以选择的空间很小;同时由于该算法需要通过硬件实现,使得用户无法对拥塞控制算法进行调整,即无法适配不同的应用场景,因此解决上述问题显着尤为重要。
本实施例提供的数据处理***,该***包括计算模块、确定模块和配置模块,所述计算模块用于根据用户的创建请求,计算当前接收端和发送端之间的网络往返时间,之后确定模块根据用户输入完成的拥塞控制算法,向所述配置模块发送所述拥塞控制算法反馈的信号,所述配置模块将接收确定模块反馈的信号,并根据该信号进行拥塞控制算法的配置,实现发送端在与接收端进行网络传输时,可以根据用户的需求进行拥塞管控,不仅可以根据使用需求调整拥塞窗口、网络传输速率等功能,还能够保证传输有效性,从而满足用户的使用需求。
图1示出了根据本说明书一实施例提供的一种数据处理***的结构示意图,所述数据处理***100包括计算模块110,确定模块120和配置模块130;
所述计算模块110,被配置为获取用户上传的创建请求,根据所述创建请求获取发送端的第一时间信息以及接收端的第二时间信息;根据所述第一时间信息和所述第二时间信息计算网络往返时间,并发送至所述用户;
所述确定模块120,被配置为接收所述用户基于所述网络往返时间创建的拥塞控制算法,并根据所述拥塞控制算法向所述配置模块130发送拥塞控制信号;
所述配置模块130,被配置为基于所述拥塞控制信号生成配置请求,并发送至所述发送端;所述配置请求用于在所述发送端的传输模块配置所述拥塞控制算法。
具体的,所述发送端具体是指数据中心可以进行数据传输的任意服务器,相应的,所述接收端具体是指与所述发送端具有网络传输关系的服务器;需要说明的是,所述发送端和所述接收端均设有传输模块和处理模块,传输模块用于进行数据包和请求的传输,处理模块用于数据包的存储和请求的处理,其中,传输模块具体是指发送端和接收端部署的网卡,处理模块具体是指接收端和发送端的应用,即传输模块为硬件模块,处理模块为软件模块。
基于此,所述创建请求具体是用户创建定制拥塞控制算法前获取网络往返时间的请求,所述拥塞控制算法具体是指发送端和接收端在进行网络传输过程中发生网络拥塞的情况下,可以根据拥塞程度对当前网络传输性能进行调整,调整可以是降低发送端的发送数据包速率,或减少发送端在拥塞控制中一定时间内允许传送的最大数据量等,而由于不同的拥塞场景具有不同的拥塞调整需求,因此为了能够向用户提供满足用户使用需求的拥塞控制算法,本实施例提供的数据处理***,实现根据用户的创建请求配置满足用户使用需求的所述拥塞控制算法。
进一步的,所述网络往返时间具体是指发送端和接收端进行网络传输的过程中交互的往返时间;需要说明的是,为了能够使得用户可以创建出满足使用需求的拥塞控制算法,将在用户编写所述拥塞处理算法时向用户提供所述网络往返时间,以实现更精准的生成所述拥塞控制算法。
除此之外,为了能够提高用户编写拥塞控制算法的效率,还可以预先存储大量的编写逻辑,使得用户只需要输入编写需求,即可自动生成拥塞控制算法;实现过程可以是根据用户的创建请求和网络往返时间编写拥塞处理策略,之后基于拥塞处理策略生成拥塞控制信息,最后根据拥塞控制信息编写所述拥塞控制算法,其中,拥塞处理策略具体是指用户根据创建需求编写的拥塞处理逻辑,拥塞控制信息具体是指针对用户的创建请求和网络往返时间输出的:在面对网络传输拥塞的情况下如何对拥塞状态进行调整,实现发送端和接收端传输的高效性的相关信息。
参见图2所示,实际应用中,所述数据处理***100用于支持RDMA网络软硬件协同的拥塞控制算法框架,该框架由硬件和软件协同完成部署用户定制的拥塞控制算法;其中,数据处理***100中的计算模块110相当于该框架中的拥塞控制算法信号输入模块,用于在创建拥塞控制算法前,可以根据用户的输入计算发送端和接收端之间的网络往返时间,该模块提供精准的测量方案,可以根据发送端和接收端时间戳进行网络往返时间的计算,需要说明的是,该模块由软件模块和硬件模块支持实现。
数据处理***100中的确定模块120相当于该框架中的拥塞控制算法逻辑模块,用于接收用户输入的拥塞控制算法,并根据拥塞控制算法生成拥塞控制信息发送到配置模块130进行配置处理,需要说明的是,为了能够方便用户调整和使用,该部分会屏蔽无关的细节部分,其中,所述拥塞控制信号具体是指根据用户自定义的拥塞控制算法生成的拥塞控制窗口或拥塞控制速率,实现配置模块直接对拥塞控制窗口或拥塞控制速率进行配置即可,实现对网络传输的管控。
数据处理***100中的配置模块130相当于该框架中的拥塞控制算法部署模块,用于根据确定模块上传的拥塞控制信号完成配置处理,并且为了能够保证拥塞控制算法可以实现,将通过软件Pacing实现,窗口实现硬件Pacing功能;即该模块主要是结合实现代码进行拥塞控制算法逻辑的应用。
具体实施时,所述确定模块120为了能够支持配置模块130配置出满足用户需求的拥塞控制机制,可以根据所述拥塞控制算法生成拥塞控制信号发送至所述配置模块130,其中,所述拥塞控制信号可以是拥塞控制窗口或拥塞控制速率,即确定模块120可以根据用户预先输入完成的拥塞控制算法生成拥塞控制窗口或拥塞控制速率,并将所述拥塞控制窗口或拥塞控制速率发送至配置模块130,配置模块130在接收到拥塞控制信号后,将根据该信号进行配置,即基于所述拥塞控制窗口或所述拥塞控制速率生成所述配置请求,并发送至所述发送端,实现在客户端配置满足用户使用需求的拥塞控制窗口或拥塞控制速率。
其中,基于窗口的拥塞控制返回窗口大小应用于网络传输即可,即将RDMA中的用户传输信息切分为更小的chunk(块)粒度,基于chunk粒度来部署用户编写的拥塞控制算法;采用基于窗口的拥塞控制算法可以根据用户返回的窗口以及已经发送但是未确认大小的窗口去阻塞网络传输,从而达到拥塞控制的效果,并且当窗口未被全部利用,且本次传输chunk大小大于窗口时,将允许进行网络传输,反之则停止网络传输;需要说明的是,为了能够提高网络传输效率,将在每次数据确认时间发生/拥塞信号更新时,更新未确认数据大小的窗口。而基于速率的拥塞控制是对chunk利用Corousel技术模块进行Pacing调度,或者采用硬件的Pacing功能对RDMA QP(通信流)进行限速,从而达到拥塞控制的目的。
需要说明的是,拥塞控制是用于防止由于过多的报文进入网络,而造成路由器和链路过载的机制,相应的,基于窗口的拥塞控制是指发送端根据网络拥塞情况确定窗口值,发送端在真正确定发送窗口时,可以取“通知窗口”和“拥塞窗口”的最小值,以保证发送端和接收端传输效率的同时,降低网络拥塞程度;并且拥塞控制的主要过程在于慢启动、拥塞避免、快重传和快恢复。
进一步的,在计算所述接收端和所述发送端的网络往返时间的过程中,由于网络往返时间将影响这拥塞控制算法的调节网络拥塞状态的精准度,因此只有保证网络往返时间测量精准度的情况下,才能够提高拥塞调整策略生成的精准度,本实施例中,所述网络往返时间的计算过程如下所述:所述计算模块110,进一步被配置为:对所述第一时间信息进行解析获得所述发送端的发送时间和响应时间;对所述第二时间信息进行解析获得所述接收端的接收时间和触发时间;根据所述发送时间、所述响应时间、所述接收时间和所述触发时间计算所述网络往返时间。
具体的,所述第一时间信息具体是指发送端在时间维度具有的相关信息,所述第二时间信息具体是指所述接收端在时间维度具有的相关信息;相应的,所述发送时间具体是指发送端向接收端发送数据包的时间,所述响应时间具体是指接收端接收到数据包后会向发送端反馈响应请求,发送端接收到该请求的时间即为所述响应时间;所述接收时间具体是指发送端向接收端发送数据包后,接收端接收到该数据包的时间,所述触发时间具体是指接收端向发送端反馈响应请求时的时间。
基于此,为了能够精准对发送端和接收端之间的网络往返时间RTT进行测量,将在发送端和接收端进行网络传输时,发送端会在发送的数据包中携带所述发送时间,接收端接收到该数据包后会立即生成接收时间,之后接收端会针对该数据包生成响应请求,并将该请求发送至发送端,同时会向响应请求中写入触发时间,最后发送端会接收到响应请求,此时发送端立即生成响应时间;当需要计算发送端和接收端之间的网络传输时间时,即可根据所述发送时间、所述响应时间、所述接收时间和所述触发时间计算所述网络往返时间。
更进一步的,所述计算模块110,进一步被配置为:计算所述响应时间和所述发送时间二者的差值,获得发送端时间差;计算所述触发时间和所述接收时间二者的差值,获得接收端时间差;根据所述发送端时间差和所述接收端时间差计算所述网络往返时间。
具体的,所述发送端时间差具体是指发送端发出数据包的时间至接收到接收端响应请求的时间之间的时间差,所述接收端时间差具体是指接收端接收到数据包到反馈响应请求时间之间的时间差;基于此,通过计算响应时间和所述发送时间二者的差值,即可得出所述发送端的发送端时间差,同时计算触发时间和接收时间二者的差值,即可得出接收端的接收端时间差,最后计算所述发送端时间差和接收端时间差得出所述网络往返时间即可;实际应用中,所述发送端和所述接收端之间的网络往返时间具体计算过程可以通过如下公式(1)计算获得:
RTT=(T4-T1)-(T3-T2)(1)
其中,RTT具体是指发送端和接收端之间的网络往返时间,T4具体是指所述响应时间,T1具体是指所述发送时间,T3具体是指所述触发时间,T2具体是指接收时间;参见图3所示,发送端和接收端之间通过传输数据包的方式对发送时间、接收时间、触发时间和响应时间进行记录,最后通过上述公式(1)即可计算出二者之间的网络往返时间。
例如,接收端和发送端是数据中心中的任意具有网络传输关系的服务器,接收端和发送端之间将建立RDMA连接,该连接可以是面向连接的不可靠连接(UC,UnreliableConnected)或面向数据的不可靠连接(UD,Unreliable connection);在进行网络往返时间计算时,利用发送端RDMAUC/UD的send completion携带数据包传输成功发出发送端网卡的时间戳T1,利用接收端RDMA UC/UD的receive completion携带数据包成功收到的网卡的时间戳T2,接收端此时会针对该数据包发出ACK(Acknowledge character,确认收到数据包),同时将发出ACK的时间T3添加到该请求中,之后发送端会收到该ACK,并且收到该ACK的时间为T4,最后通过T4-T1-T3+T2=RTT,即可计算出发送端和接收端之间的网络往返时间,方便后续进行拥塞控制算法的部署,
综上,通过采用软硬结合的方式对发送端和接收端之间的网络往返时间进行计算,不仅可以提高计算网络往返时间的精准度,还能够有效的提高后续部署的拥塞控制算法与用户的需求相适配,从而进一步满足用户的使用需求。
此外,在通过计算模块110精准的计算出所述发送端和所述接收端之间的网络往返时间之后,若需要根据用户的创建需求自动完成拥塞控制算法的编写,可以根据所述网络往返时间和所述用户的创建请求进行拥塞处理策略的编写,而在此过程中,不同的用户可能具有不同的需求,为了满足不同用户的使用需求,将根据所述创建请求中的调整信息进行拥塞控制信息的生成,具体是指:根据所述创建请求确定用户的调整信息,并基于调整信息和网络往返时间编写拥塞处理策略;根据拥塞处理策略生成窗口信息和传输信息,并基于窗口信息和传输信息组成所述拥塞控制信息。
具体的,所述调整信息具体是指用户定制拥塞控制算法的需求,所述拥塞处理策略具体是指编写满足用户需求的拥塞控制算法的处理逻辑,所述窗口信息具体是指用户调整拥塞窗口、通告窗口、有效窗口等相关的信息,所述传输信息具体是指用户调整发送数据包的传输速率的相关信息。
其中,所述拥塞窗口(cwnd)用于限定发送端在拥塞控制中在一定时间内允许传输的最大数据量,是来自于发送端的流量控制;所述通知窗口(awnd)用于连接建立及传输过程中,接收端向发送端通告的最大接收速率,对接收端的流量进行控制;有效窗口(win)用于表示发送端数据包发送的实际窗口大小,限定为win=min(cwnd/awnd)。
基于此,在计算完成发送端和接收端之间的所述网络往返时间之后,将根据用户的创建请求确定用户创建拥塞控制算法的调整信息,并基于调整信息和所述网络往返时间编写所述拥塞处理策略,之后根据所述拥塞处理策略生成窗口信息和传输信息,最后基于传输信息和窗口信息即可生成所述拥塞控制信息,从而实现根据用户的使用需求进行相关窗口的设定和传输速率的设定,为后续生成满足用户使用需求的拥塞控制算法大小基础。
例如,用户的创建请求是控制拥塞窗口cwnd缓慢增大,即根据创建请求确定调整信息为:每经过一个往返时间RTT就把发送端的拥塞窗口cwnd加2,使得拥塞窗口按照线性规律缓慢增长,以及发送端和接收端之间的传输速率将在遇到了拥塞时降低传输速率;基于此,此时根据调整信息和网络往返时间RTT编写处理逻辑,拥塞控制算法逻辑模块将输出拥塞窗口信息和传输速率信息,最后根据拥塞窗口信息和传输速率信息即可组成拥塞控制信息,以用于后续可以根据该信息生成符合用户定制需求的拥塞控制算法。
综上,通过确定模块自动完成拥塞处理策略的编写,不仅可以节省编写拥塞控制信息的时间,还能够屏蔽无关的编写细节,有效的提高了为用户部署拥塞控制算法的部署效率。
此外,由于发送端和接收端在进行网络传输时,很容易因为某些因素出现丢包的情况,此时为了能够避免丢包引发数据包传输不完整的问题,将设定重传机制,即发生丢包事件可以针对丢包的数据包进行重传,或者针对传输请求对应的全部数据包进行重传,从而保证发送端和接收端之间的数据包传输的完整性,而在部署拥塞控制算法时,为了能够满足对场景也进行防控,用户可以根据需求在配置拥塞控制算法时,也进行重传机制的配置,本实施例中,参见图4所示,所述数据传输***100还包括接收信息模块140,所述接收信息模块140,被配置为接收所述用户上传的重传调整信息,根据所述重传调整信息生成重传调整信号并发送至所述配置模块130。
具体的,所述重传调整信息具体是指在发生丢包的情况下如何针对重传的数据包进行传输调整的信息;用户在创建所述重传调整信息时,为了能够提高用户的创建效率,还可以向用户提供重传处理策略,用于对用户进行提示,实现辅助加快配置拥塞控制算法的处理,其中,重传处理策略具体是指在发生丢包的情况下如何进行数据包的重传相关的策略。
基于此,由于网络传输过程发生丢包的概率较高,为了避免传输的数据包的完整性,可以接收用户再次上传的重传调整信息,之后根据所述重传调整信息生成所述重传调整信息号并发送至所述配置模块130即可,实现配置模块在针对用户的使用需求配置拥塞控制算法时,不仅可以部署关于网络拥塞时相应的调整算法,还能够部署发生丢包时重传数据包相应的调整策略,从而提高用户的体验效果。
更进一步的,在获得拥塞控制信息和重传调整信息的情况下,此时配置模块130将配置满足用户使用需求的目标拥塞控制算法,本实施例中,所述配置模块130,还被配置为:根据所述拥塞控制信号和所述重传调整信号生成目标配置请求;将所述目标配置请求发送至所述发送端;所述目标配置请求用于在所述发送端的传输模块配置包含所述重传调整信息的拥塞控制算法。
具体的,所述目标配置请求具体是指配置具有重传和拥塞功能的目标拥塞控制算法,所述目标拥塞控制算法具体是指集成拥塞控制算法和重传调整算法(与重传调整信息相对应的算法)的算法,并且该算法与用户的创建请求相适配,通过部署所述目标拥塞控制算法可以实现:发送端和接收端发生网络传输拥塞时,可以根据用户的创建该算法时的需求对拥塞窗口调整;以及发送端和接收端发生丢包时,可以根据用户创建该算法时的需求进行数据包的重传;相应的,所述目标配置请求具体是指用于在所述发送端的传输模块配置所述目标拥塞控制算法的请求。
基于此,在确定模块120向所述配置模块130发送拥塞控制信号和重传调整信号的情况下,所述配置模块130将根据所述拥塞控制信号和所述重传调整信号生成与所述创建请求对应的所述目标拥塞控制算法(将重传调整信号和拥塞控制信号合并),并基于所述目标拥塞控制算法生成目标配置请求,以实现可以在所述发送端部署包含所述重传调整信息的拥塞控制算法,满足发送端和接收端之间发生网络传输拥塞时,可以根据该算法对拥塞窗口、通告窗口和/或有效窗口进行调整,以及在发送端和接收端之间发生丢包时,可以根据该算法选择最适合的重传数据包方式进行重传,从而使得当前部署的目标拥塞控制算法的执行逻辑是根据用户的需求进行部署,以适配到符合用户使用需求的场景,提高用户的体验效果。
实际应用中,在生成所述重传调整信息的过程中,为了能够充分的利用网络传输资源,可以设定将占用缓存较小的数据包采用RDMA send直接发送,占用缓存较大的数据包采用协议封装+RDMA write发送,并在判断数据包的大小可以根据用户的需求灵活分配,本实施在此不作任何限定。
综上,通过在部署所述目标拥塞控制算法时结合所述重传调整信息,不仅可以实现应对发送端和接收端之间的拥塞事件,还能够对发送端和接收端之间发生丢包时进行重传,从而进一步的满足了用户的拥塞控制算法部署需求,提高用户的使用体验。
更进一步的,在确定模块120针对用户的创建请求生成所述拥塞控制信息的基础上,所述配置模块130将根据所述拥塞控制信息生成满足用户使用需求的拥塞控制算法并进行部署,本实施例中,所述配置模块130,还被配置为:确定所述拥塞控制算法对应的配置代码,并对所述配置代码进行封装获得拥塞控制包;基于所述拥塞控制包生成所述配置请求,并将所述配置请求发送至所述发送端。
具体的,所述配置代码具体是指拥塞控制算法对应的底层代码,所述拥塞控制包具体是指部署拥塞控制算法的数据包,基于此,所述配置模块130在收到所述拥塞控制信息后,将根据所述拥塞控制信息生成所述拥塞控制算法,同时为了能够对拥塞控制算法进行部署,将确定拥塞控制算法对应的配置代码,之后对配置代码进行封装即可获得所述拥塞控制算法对应的拥塞控制包,最后基于所述拥塞控制包生成配置请求并发送至所述发送端即可,实现发送端可以直接安装拥塞控制包,实现对拥塞控制算法的部署。
实际应用中,配置模块130可以采用基于窗口的拥塞控制,返回窗口大小应用于throttle即可,并且还可以采用基于速率的拥塞控制,返回速率大小即可,需要说明的是,在此过程中需要搭配pacing模块,基于pacing模块可以采用软件Carousel Pacing***或者采用Mellanox CX5的硬件支持pacing功能。此外,配置模块130可以采用HPCC(High-PerformanceComputingCluster,高性能计算集群)拥塞控制进行拥塞控制算法的部署。
本实施例提供的数据处理***,该***包括计算模块、确定模块和配置模块,所述计算模块用于根据用户的创建请求,计算当前接收端和发送端之间的网络往返时间,之后确定模块根据用户输入完成的拥塞控制算法,向所述配置模块发送所述拥塞控制算法反馈的信号,所述配置模块将接收确定模块反馈的信号,并根据该信号进行拥塞控制算法的配置,实现发送端在与接收端进行网络传输时,可以根据用户的需求进行拥塞管控,不仅可以根据使用需求调整拥塞窗口、网络传输速率等功能,还能够保证传输有效性,从而满足用户的使用需求。
与上述***实施例相对应,本说明书还提供了一种数据处理方法实施例,图5示出了本说明书一实施例提供的一种数据处理方法的处理流程图。如图5所示,具体包括以下步骤:
步骤S502,计算模块获取用户上传的创建请求,根据所述创建请求获取发送端的第一时间信息以及接收端的第二时间信息,根据所述第一时间信息和所述第二时间信息计算网络往返时间,并发送至所述用户;
步骤S504,确定模块接收所述用户基于所述网络往返时间创建的拥塞控制算法,并根据所述拥塞控制算法向所述配置模块发送拥塞控制信号;
步骤S506,配置模块基于所述拥塞控制信号生成配置请求,并发送至所述发送端;所述配置请求用于在所述发送端的传输模块配置所述拥塞控制算法。
一个可选的实施例中,所述计算模块对所述第一时间信息进行解析获得所述发送端的发送时间和响应时间;对所述第二时间信息进行解析获得所述接收端的接收时间和触发时间;根据所述发送时间、所述响应时间、所述接收时间和所述触发时间计算所述网络往返时间。
一个可选的实施例中,所述计算模块计算所述响应时间和所述发送时间二者的差值,获得发送端时间差;计算所述触发时间和所述接收时间二者的差值,获得接收端时间差;根据所述发送端时间差和所述接收端时间差计算所述网络往返时间。
一个可选的实施例中,所述确定模块根据所述拥塞控制算法向所述配置模块发送拥塞控制窗口或拥塞控制速率;
相应的,所述配置模块基于所述拥塞控制窗口或所述拥塞控制速率生成所述配置请求,并发送至所述发送端。
一个可选的实施例中,所述数据处理方法,还包括:
接收所述用户上传的重传调整信息,根据所述重传调整信息生成重传调整信号并发送至所述配置模块。
一个可选的实施例中,所述配置模块根据所述拥塞控制信号和所述重传调整信号生成目标配置请求;将所述目标配置请求发送至所述发送端;所述目标配置请求用于在所述发送端的传输模块配置包含所述重传调整信息的拥塞控制算法。
一个可选的实施例中,所述配置模块确定所述拥塞控制算法对应的配置代码,并对所述配置代码进行封装获得拥塞控制包;基于所述拥塞控制包生成所述配置请求,并将所述配置请求发送至所述发送端。
综上所述,所述计算模块用于根据用户的创建请求,计算当前接收端和发送端之间的网络往返时间,之后确定模块根据用户输入完成的拥塞控制算法,向所述配置模块发送所述拥塞控制算法反馈的信号,所述配置模块将接收确定模块反馈的信号,并根据该信号进行拥塞控制算法的配置,实现发送端在与接收端进行网络传输时,可以根据用户的需求进行拥塞管控,不仅可以根据使用需求调整拥塞窗口、网络传输速率等功能,还能够保证传输有效性,从而满足用户的使用需求。
上述为本实施例的一种数据处理方法的示意性方案。需要说明的是,该数据处理方法的技术方案与上述的数据处理***的技术方案属于同一构思,数据处理方法的技术方案未详细描述的细节内容,均可以参见上述数据处理***的技术方案的描述。
本说明书还提供了另一种数据处理方法的实施例,如图6所示,图6示出了本说明书一实施例提供的另一种数据处理方法的处理流程图,具体包括以下步骤:
步骤S602,获取用户上传的创建请求,根据所述创建请求获取发送端的第一时间信息以及接收端的第二时间信息;
步骤S604,根据所述第一时间信息和所述第二时间信息计算网络往返时间,并将所述网络往返时间发送至所述用户;
步骤S606,接收所述用户基于所述网络往返时间创建的拥塞控制算法,并根据所述拥塞控制算法创建拥塞控制信号;
步骤S608,基于所述拥塞控制信号生成配置请求,并发送至所述发送端,所述配置请求用于在所述发送端的传输模块配置所述拥塞控制算法。
一个可选的实施例中,所述根据所述第一时间信息和所述第二时间信息计算网络往返时间,包括:
对所述第一时间信息进行解析获得所述发送端的发送时间和响应时间,以及对所述第二时间信息进行解析获得所述接收端的接收时间和触发时间;
根据所述发送时间、所述响应时间、所述接收时间和所述触发时间计算所述网络往返时间。
一个可选的实施例中,所述根据所述发送时间、所述响应时间、所述接收时间和所述触发时间计算所述网络往返时间,包括:
计算所述响应时间和所述发送时间二者的差值,获得发送端时间差,以及计算所述触发时间和所述接收时间二者的差值,获得接收端时间差;
根据所述发送端时间差和所述接收端时间差计算所述网络往返时间。
一个可选的实施例中,所述根据所述拥塞控制算法创建拥塞控制信号,包括:
根据所述拥塞控制算法创建拥塞控制窗口或拥塞控制速率;
相应的,所述基于所述拥塞控制信号生成配置请求,并发送至所述发送端,包括:
基于所述拥塞控制窗口或所述拥塞控制速率生成所述配置请求,并发送至所述发送端。
一个可选的实施例中,还包括:
接收所述用户上传的重传调整信息,根据所述重传调整信息生成重传调整信号。
一个可选的实施例中,还包括:
根据所述拥塞控制信号和所述重传调整信号生成目标配置请求;
将所述目标配置请求发送至所述发送端;所述目标配置请求用于在所述发送端的传输模块配置包含所述重传调整信息的拥塞控制算法。
一个可选的实施例中,所述基于所述拥塞控制算法生成配置请求,并发送至所述发送端,包括:
确定所述拥塞控制算法对应的配置代码,并对所述配置代码进行封装获得拥塞控制包;
基于所述拥塞控制包生成所述配置请求,并将所述配置请求发送至所述发送端。
综上所述,实现发送端在与接收端进行网络传输时,可以根据用户的需求进行拥塞管控,不仅可以根据使用需求调整拥塞窗口、网络传输速率等功能,还能够保证传输有效性,从而满足用户的使用需求。
上述为本实施例的另一种数据处理方法的示意性方案。需要说明的是,该数据处理方法的技术方案与上述的数据处理***的技术方案属于同一构思,数据处理方法的技术方案未详细描述的细节内容,均可以参见上述数据处理***的技术方案的描述。
与上述方法实施例相对应,本说明书还提供了数据处理装置实施例,图7示出了本说明书一实施例提供的一种数据处理装置的结构示意图。如图7所示,该装置包括:
获取单元702,被配置为获取用户上传的创建请求,根据所述创建请求获取发送端的第一时间信息以及接收端的第二时间信息;
计算单元704,被配置为根据所述第一时间信息和所述第二时间信息计算网络往返时间,并将所述网络往返时间发送至所述用户;
接收单元706,被配置为接收所述用户基于所述网络往返时间创建的拥塞控制算法,并根据所述拥塞控制算法向所述配置模块发送拥塞控制信号;
发送单元708,被配置为基于所述拥塞控制信号生成配置请求,并发送至所述发送端;所述配置请求用于在所述发送端的传输模块配置所述拥塞控制算法。
一个可选的实施例中,所述计算单元704进一步被配置为:
对所述第一时间信息进行解析获得所述发送端的发送时间和响应时间,以及对所述第二时间信息进行解析获得所述接收端的接收时间和触发时间;根据所述发送时间、所述响应时间、所述接收时间和所述触发时间计算所述网络往返时间。
一个可选的实施例中,所述计算单元704进一步被配置为:
计算所述响应时间和所述发送时间二者的差值,获得发送端时间差,以及计算所述触发时间和所述接收时间二者的差值,获得接收端时间差;根据所述发送端时间差和所述接收端时间差计算所述网络往返时间。
一个可选的实施例中,所述接收单元706进一步被配置为:
根据所述拥塞控制算法创建拥塞控制窗口或拥塞控制速率;
相应的,所述发送单元708进一步被配置为:
基于所述拥塞控制窗口或所述拥塞控制速率生成所述配置请求,并发送至所述发送端。
一个可选的实施例中,所述数据处理装置,还包括:
接收信息单元,被配置为接收所述用户上传的重传调整信息,根据所述重传调整信息生成重传调整信号。
一个可选的实施例中,所述接收信息单元进一步被配置为:
根据所述拥塞控制信号和所述重传调整信号生成目标配置请求;将所述目标配置请求发送至所述发送端;所述目标配置请求用于在所述发送端的传输模块配置包含所述重传调整信息的拥塞控制算法。
一个可选的实施例中,所述发送单元708进一步被配置为:
确定所述拥塞控制算法对应的配置代码,并对所述配置代码进行封装获得拥塞控制包;基于所述拥塞控制包生成所述配置请求,并将所述配置请求发送至所述发送端。
综上所述,实现发送端在与接收端进行网络传输时,可以根据用户的需求进行拥塞管控,不仅可以根据使用需求调整拥塞窗口、网络传输速率等功能,还能够保证传输有效性,从而满足用户的使用需求。
上述为本实施例的一种数据处理装置的示意性方案。需要说明的是,该数据处理装置的技术方案与上述的数据处理方法的技术方案属于同一构思,数据处理装置的技术方案未详细描述的细节内容,均可以参见上述数据处理方法的技术方案的描述。
图8示出了根据本说明书一实施例提供的一种计算设备800的结构框图。该计算设备800的部件包括但不限于存储器810和处理器820。处理器820与存储器810通过总线830相连接,数据库850用于保存数据。
计算设备800还包括接入设备840,接入设备840使得计算设备800能够经由一个或多个网络860通信。这些网络的示例包括公用交换电话网(PSTN)、局域网(LAN)、广域网(WAN)、个域网(PAN)或诸如因特网的通信网络的组合。接入设备840可以包括有线或无线的任何类型的网络接口(例如,网络接口卡(NIC))中的一个或多个,诸如IEEE802.11无线局域网(WLAN)无线接口、全球微波互联接入(Wi-MAX)接口、以太网接口、通用串行总线(USB)接口、蜂窝网络接口、蓝牙接口、近场通信(NFC)接口,等等。
在本说明书的一个实施例中,计算设备800的上述部件以及图8中未示出的其他部件也可以彼此相连接,例如通过总线。应当理解,图8所示的计算设备结构框图仅仅是出于示例的目的,而不是对本说明书范围的限制。本领域技术人员可以根据需要,增添或替换其他部件。
计算设备800可以是任何类型的静止或移动计算设备,包括移动计算机或移动计算设备(例如,平板计算机、个人数字助理、膝上型计算机、笔记本计算机、上网本等)、移动电话(例如,智能手机)、可佩戴的计算设备(例如,智能手表、智能眼镜等)或其他类型的移动设备,或者诸如台式计算机或PC的静止计算设备。计算设备800还可以是移动式或静止式的服务器。
其中,处理器820用于执行如下计算机可执行指令:
获取用户上传的创建请求,根据所述创建请求获取发送端的第一时间信息以及接收端的第二时间信息;
根据所述第一时间信息和所述第二时间信息计算网络往返时间,并将所述网络往返时间发送至所述用户;
接收所述用户基于所述网络往返时间创建的拥塞控制算法,并根据所述拥塞控制算法创建拥塞控制信号;
基于所述拥塞控制信号生成配置请求,并发送至所述发送端,所述配置请求用于在所述发送端的传输模块配置所述拥塞控制算法。
上述为本实施例的一种计算设备的示意性方案。需要说明的是,该计算设备的技术方案与上述的数据处理方法的技术方案属于同一构思,计算设备的技术方案未详细描述的细节内容,均可以参见上述数据处理方法的技术方案的描述。
本说明书一实施例还提供一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时以用于:
获取用户上传的创建请求,根据所述创建请求获取发送端的第一时间信息以及接收端的第二时间信息;
根据所述第一时间信息和所述第二时间信息计算网络往返时间,并将所述网络往返时间发送至所述用户;
接收所述用户基于所述网络往返时间创建的拥塞控制算法,并根据所述拥塞控制算法创建拥塞控制信号;
基于所述拥塞控制信号生成配置请求,并发送至所述发送端,所述配置请求用于在所述发送端的传输模块配置所述拥塞控制算法。
上述为本实施例的一种计算机可读存储介质的示意性方案。需要说明的是,该存储介质的技术方案与上述的数据处理方法的技术方案属于同一构思,存储介质的技术方案未详细描述的细节内容,均可以参见上述数据处理方法的技术方案的描述。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
所述计算机指令包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
需要说明的是,对于前述的各方法实施例,为了简便描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本说明书并不受所描述的动作顺序的限制,因为依据本说明书,某些步骤可以采用其它顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定都是本说明书所必须的。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其它实施例的相关描述。
以上公开的本说明书优选实施例只是用于帮助阐述本说明书。可选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本说明书的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本说明书。本说明书仅受权利要求书及其全部范围和等效物的限制。
Claims (18)
1.一种数据处理***,包括:
计算模块,确定模块,配置模块;
所述计算模块,被配置为获取用户上传的创建请求,根据所述创建请求获取发送端的第一时间信息以及接收端的第二时间信息;根据所述第一时间信息和所述第二时间信息计算网络往返时间,并发送至所述用户;
所述确定模块,被配置为接收所述用户基于所述网络往返时间创建的拥塞控制算法,并根据所述拥塞控制算法向所述配置模块发送拥塞控制信号;
所述配置模块,被配置为基于所述拥塞控制信号生成配置请求,并发送至所述发送端;所述配置请求用于在所述发送端的传输模块配置所述拥塞控制算法。
2.根据权利要求1所述的数据处理***,所述计算模块,进一步被配置为:
对所述第一时间信息进行解析获得所述发送端的发送时间和响应时间;对所述第二时间信息进行解析获得所述接收端的接收时间和触发时间;根据所述发送时间、所述响应时间、所述接收时间和所述触发时间计算所述网络往返时间。
3.根据权利要求2所述的数据处理***,所述计算模块,进一步被配置为:
计算所述响应时间和所述发送时间二者的差值,获得发送端时间差;计算所述触发时间和所述接收时间二者的差值,获得接收端时间差;根据所述发送端时间差和所述接收端时间差计算所述网络往返时间。
4.根据权利要求1所述的数据处理***,所述确定模块,进一步被配置为:
根据所述拥塞控制算法向所述配置模块发送拥塞控制窗口或拥塞控制速率;
相应的,所述配置模块,进一步被配置为:
基于所述拥塞控制窗口或所述拥塞控制速率生成所述配置请求,并发送至所述发送端。
5.根据权利要求1所述的数据处理***,还包括:
接收信息模块,被配置为接收所述用户上传的重传调整信息,根据所述重传调整信息生成重传调整信号并发送至所述配置模块。
6.根据权利要求5所述的数据处理***,所述配置模块,还被配置为:
根据所述拥塞控制信号和所述重传调整信号生成目标配置请求;将所述目标配置请求发送至所述发送端;所述目标配置请求用于在所述发送端的传输模块配置包含所述重传调整信息的拥塞控制算法。
7.根据权利要求1所述的数据处理***,所述配置模块,还被配置为:
确定所述拥塞控制算法对应的配置代码,并对所述配置代码进行封装获得拥塞控制包;基于所述拥塞控制包生成所述配置请求,并将所述配置请求发送至所述发送端。
8.一种数据处理方法,包括:
计算模块获取用户上传的创建请求,根据所述创建请求获取发送端的第一时间信息以及接收端的第二时间信息,根据所述第一时间信息和所述第二时间信息计算网络往返时间,并发送至所述用户;
确定模块接收所述用户基于所述网络往返时间创建的拥塞控制算法,并根据所述拥塞控制算法向所述配置模块发送拥塞控制信号;
配置模块基于所述拥塞控制信号生成配置请求,并发送至所述发送端;所述配置请求用于在所述发送端的传输模块配置所述拥塞控制算法。
9.一种数据处理方法,包括:
获取用户上传的创建请求,根据所述创建请求获取发送端的第一时间信息以及接收端的第二时间信息;
根据所述第一时间信息和所述第二时间信息计算网络往返时间,并将所述网络往返时间发送至所述用户;
接收所述用户基于所述网络往返时间创建的拥塞控制算法,并根据所述拥塞控制算法创建拥塞控制信号;
基于所述拥塞控制信号生成配置请求,并发送至所述发送端,所述配置请求用于在所述发送端的传输模块配置所述拥塞控制算法。
10.根据权利要求9所述的数据处理方法,所述根据所述第一时间信息和所述第二时间信息计算网络往返时间,包括:
对所述第一时间信息进行解析获得所述发送端的发送时间和响应时间,以及对所述第二时间信息进行解析获得所述接收端的接收时间和触发时间;
根据所述发送时间、所述响应时间、所述接收时间和所述触发时间计算所述网络往返时间。
11.根据权利要求10所述的数据处理方法,所述根据所述发送时间、所述响应时间、所述接收时间和所述触发时间计算所述网络往返时间,包括:
计算所述响应时间和所述发送时间二者的差值,获得发送端时间差,以及计算所述触发时间和所述接收时间二者的差值,获得接收端时间差;
根据所述发送端时间差和所述接收端时间差计算所述网络往返时间。
12.根据权利要求9所述的数据处理方法,所述根据所述拥塞控制算法创建拥塞控制信号,包括:
根据所述拥塞控制算法创建拥塞控制窗口或拥塞控制速率;
相应的,所述基于所述拥塞控制信号生成配置请求,并发送至所述发送端,包括:
基于所述拥塞控制窗口或所述拥塞控制速率生成所述配置请求,并发送至所述发送端。
13.根据权利要求9所述的数据处理方法,还包括:
接收所述用户上传的重传调整信息,根据所述重传调整信息生成重传调整信号。
14.根据权利要求13所述的数据处理方法,还包括:
根据所述拥塞控制信号和所述重传调整信号生成目标配置请求;
将所述目标配置请求发送至所述发送端;所述目标配置请求用于在所述发送端的传输模块配置包含所述重传调整信息的拥塞控制算法。
15.根据权利要求9所述的数据处理方法,所述基于所述拥塞控制算法生成配置请求,并发送至所述发送端,包括:
确定所述拥塞控制算法对应的配置代码,并对所述配置代码进行封装获得拥塞控制包;
基于所述拥塞控制包生成所述配置请求,并将所述配置请求发送至所述发送端。
16.一种数据处理装置,包括:
获取单元,被配置为获取用户上传的创建请求,根据所述创建请求获取发送端的第一时间信息以及接收端的第二时间信息;
计算单元,被配置为根据所述第一时间信息和所述第二时间信息计算网络往返时间,并将所述网络往返时间发送至所述用户;
接收单元,被配置为接收所述用户基于所述网络往返时间创建的拥塞控制算法,并根据所述拥塞控制算法向所述配置模块发送拥塞控制信号;
发送单元,被配置为基于所述拥塞控制信号生成配置请求,并发送至所述发送端;所述配置请求用于在所述发送端的传输模块配置所述拥塞控制算法。
17.一种计算设备,包括:
存储器和处理器;
所述存储器用于存储计算机可执行指令,所述处理器用于执行所述计算机可执行指令,以实现下述方法:
获取用户上传的创建请求,根据所述创建请求获取发送端的第一时间信息以及接收端的第二时间信息;
根据所述第一时间信息和所述第二时间信息计算网络往返时间,并将所述网络往返时间发送至所述用户;
接收所述用户基于所述网络往返时间创建的拥塞控制算法,并根据所述拥塞控制算法创建拥塞控制信号;
基于所述拥塞控制信号生成配置请求,并发送至所述发送端,所述配置请求用于在所述发送端的传输模块配置所述拥塞控制算法。
18.一种计算机可读存储介质,其存储有计算机指令,该指令被处理器执行时实现权利要求9至15任意一项所述数据处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110162707.2A CN113300971B (zh) | 2021-02-05 | 2021-02-05 | 数据处理***及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110162707.2A CN113300971B (zh) | 2021-02-05 | 2021-02-05 | 数据处理***及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113300971A true CN113300971A (zh) | 2021-08-24 |
CN113300971B CN113300971B (zh) | 2024-07-02 |
Family
ID=77318920
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110162707.2A Active CN113300971B (zh) | 2021-02-05 | 2021-02-05 | 数据处理***及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113300971B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113472900A (zh) * | 2021-09-01 | 2021-10-01 | 阿里云计算有限公司 | 报文处理方法、设备、存储介质及计算机程序产品 |
Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070008884A1 (en) * | 2003-10-08 | 2007-01-11 | Bob Tang | Immediate ready implementation of virtually congestion free guarantedd service capable network |
US20070091923A1 (en) * | 2005-10-21 | 2007-04-26 | Steven Elliot | Method and apparatus for adaptive bandwidth control with user settings |
US20080037420A1 (en) * | 2003-10-08 | 2008-02-14 | Bob Tang | Immediate ready implementation of virtually congestion free guaranteed service capable network: external internet nextgentcp (square waveform) TCP friendly san |
JP2011155406A (ja) * | 2010-01-26 | 2011-08-11 | Nippon Hoso Kyokai <Nhk> | 送信装置、送信方法及びプログラム |
US20140164641A1 (en) * | 2012-12-11 | 2014-06-12 | The Hong Kong University Of Science And Technology | Congestion control for data center traffic |
CN104320809A (zh) * | 2014-11-05 | 2015-01-28 | 四川九洲电器集团有限责任公司 | 基于rtt的无线多跳网络拥塞控制方法及*** |
CN104836742A (zh) * | 2015-05-07 | 2015-08-12 | 盐城工学院 | 一种m2m终端及其tcp传输拥塞控制方法及*** |
CN106789718A (zh) * | 2016-12-05 | 2017-05-31 | 广东神马搜索科技有限公司 | 数据传输的拥塞控制方法、设备、服务器及可编程设备 |
CN108259383A (zh) * | 2016-12-29 | 2018-07-06 | 北京华为数字技术有限公司 | 一种数据的传输方法和网络设备 |
CN108476176A (zh) * | 2016-01-15 | 2018-08-31 | 高通股份有限公司 | 在视频电话中的实时传输协议拥塞控制技术 |
US20190044861A1 (en) * | 2018-09-26 | 2019-02-07 | Intel Corporation | Technologies for congestion control for ip-routable rdma over converged ethernet |
CN111835649A (zh) * | 2019-04-15 | 2020-10-27 | 深信服科技股份有限公司 | 一种数据发送方法、装置及相关组件 |
CN112203328A (zh) * | 2020-09-30 | 2021-01-08 | 中南林业科技大学 | 一种基于dccp的拥塞控制方法、装置及电子设备 |
-
2021
- 2021-02-05 CN CN202110162707.2A patent/CN113300971B/zh active Active
Patent Citations (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070008884A1 (en) * | 2003-10-08 | 2007-01-11 | Bob Tang | Immediate ready implementation of virtually congestion free guarantedd service capable network |
US20080037420A1 (en) * | 2003-10-08 | 2008-02-14 | Bob Tang | Immediate ready implementation of virtually congestion free guaranteed service capable network: external internet nextgentcp (square waveform) TCP friendly san |
US20070091923A1 (en) * | 2005-10-21 | 2007-04-26 | Steven Elliot | Method and apparatus for adaptive bandwidth control with user settings |
JP2011155406A (ja) * | 2010-01-26 | 2011-08-11 | Nippon Hoso Kyokai <Nhk> | 送信装置、送信方法及びプログラム |
US20140164641A1 (en) * | 2012-12-11 | 2014-06-12 | The Hong Kong University Of Science And Technology | Congestion control for data center traffic |
CN104320809A (zh) * | 2014-11-05 | 2015-01-28 | 四川九洲电器集团有限责任公司 | 基于rtt的无线多跳网络拥塞控制方法及*** |
CN104836742A (zh) * | 2015-05-07 | 2015-08-12 | 盐城工学院 | 一种m2m终端及其tcp传输拥塞控制方法及*** |
CN108476176A (zh) * | 2016-01-15 | 2018-08-31 | 高通股份有限公司 | 在视频电话中的实时传输协议拥塞控制技术 |
CN106789718A (zh) * | 2016-12-05 | 2017-05-31 | 广东神马搜索科技有限公司 | 数据传输的拥塞控制方法、设备、服务器及可编程设备 |
CN108259383A (zh) * | 2016-12-29 | 2018-07-06 | 北京华为数字技术有限公司 | 一种数据的传输方法和网络设备 |
US20190044861A1 (en) * | 2018-09-26 | 2019-02-07 | Intel Corporation | Technologies for congestion control for ip-routable rdma over converged ethernet |
CN111835649A (zh) * | 2019-04-15 | 2020-10-27 | 深信服科技股份有限公司 | 一种数据发送方法、装置及相关组件 |
CN112203328A (zh) * | 2020-09-30 | 2021-01-08 | 中南林业科技大学 | 一种基于dccp的拥塞控制方法、装置及电子设备 |
Non-Patent Citations (5)
Title |
---|
刘洪全;谷源涛;: "MANET中TCP拥塞控制方法综述", 中南大学学报(自然科学版), no. 01, 26 January 2013 (2013-01-26) * |
张华;: "网络拥塞控制策略的研究与发展", 电脑知识与技术, no. 27, 25 September 2008 (2008-09-25) * |
赵伟丰;郭涛;舒炎泰;刘春凤;: "高带宽无线局域网中PI速率控制算法", 计算机应用研究, no. 10, 3 June 2013 (2013-06-03) * |
陈远;李乐民;: "无线网络中实时业务的随机超时早检测缓存管理算法", 电子与信息学报, no. 05, 20 May 2006 (2006-05-20) * |
黄俊琳;雷凯;汪漪;: "基于BBR的NDN拥塞控制算法", 重庆邮电大学学报(自然科学版), no. 01, 15 February 2018 (2018-02-15) * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113472900A (zh) * | 2021-09-01 | 2021-10-01 | 阿里云计算有限公司 | 报文处理方法、设备、存储介质及计算机程序产品 |
Also Published As
Publication number | Publication date |
---|---|
CN113300971B (zh) | 2024-07-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10009259B2 (en) | Multi-path data transfer using network coding | |
EP4203428A1 (en) | Multi-access management service enhancements for quality of service and time sensitive applications | |
NL2033587B1 (en) | Multi-access management service queueing and reordering techniques | |
CN112436994B (zh) | 一种数据传输方法及电子设备 | |
US11012724B2 (en) | Video transmission method, apparatus, and system, and computer readable storage medium | |
CN109906631B (zh) | 自适应传输方法和装置 | |
WO2020119347A1 (zh) | 一种消息传输方法、装置、设备及介质 | |
KR20140050454A (ko) | 서버, 클라이언트 디바이스 및 그 제어 방법 | |
TW201540031A (zh) | 實現客戶端側的傳送功能的傳輸加速器 | |
CN103563331A (zh) | 用于通过流控制来增强设备性能的方法和装置 | |
US10929953B2 (en) | Method and apparatus for selecting communication interface in wireless communication system | |
CN113300817B (zh) | 数据传输方法以及装置 | |
CN110380978B (zh) | 多路径传输的调度方法、装置、计算机设备和存储介质 | |
CN114979839A (zh) | 一种传输控制协议代理方法及通信装置 | |
WO2019144802A1 (zh) | 一种数据的传输方法及其相关设备 | |
JP2022546108A (ja) | 情報処理方法、装置、設備及びコンピュータ読み取り可能な記憶媒体 | |
WO2022083371A1 (zh) | 一种数据传输方法和装置 | |
CN113300971B (zh) | 数据处理***及方法 | |
KR20190011898A (ko) | 무선 통신 시스템에서 단말, 기지국 및 이의 통신 방법 | |
CN114039702B (zh) | 数据传输方法、装置、设备和介质 | |
WO2021073394A1 (zh) | 一种数据传输方法、装置、电子设备及存储介质 | |
CN111447026B (zh) | 处理数据的方法和处理数据的装置 | |
CN113300967A (zh) | Rdma网络传输方法、装置以及rdma网络通信*** | |
WO2019159893A1 (ja) | データ配信装置、システム、方法および記録媒体 | |
US20220416951A1 (en) | Harq-ack information transmission method and apparatus, and communication device |
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: 40057892 Country of ref document: HK |
|
GR01 | Patent grant |