数据传输控制方法、装置、电子设备及存储介质与流程

文档序号:37195277发布日期:2024-03-01 13:10阅读:15来源:国知局
数据传输控制方法、装置、电子设备及存储介质与流程

所属的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。下面参照图9来描述根据本公开的这种实施方式的电子设备900。图9显示的电子设备900仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。如图9所示,电子设备900以通用计算设备的形式表现。电子设备900的组件可以包括但不限于:上述至少一个处理单元910、上述至少一个存储单元920、连接不同系统组件(包括存储单元920和处理单元910)的总线930。其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元910执行,使得所述处理单元910执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。例如,所述处理单元910可以执行上述方法实施例的如下步骤:向数据传输链路上各个转发节点发送网络质量轮询数据包,其中,网络质量轮询数据包用于触发各个转发节点反馈传输数据的传输质量信息;接收数据传输链路上各个转发节点反馈的网络质量响应数据包,其中,每个转发节点反馈的网络质量响应数据包中包含:每个转发节点反馈传输数据的传输质量信息;根据各个转发节点反馈的网络质量响应数据包,确定各个转发节点传输数据的传输质量是否满足预设传输控制条件;当第一转发节点的传输质量满足预设传输控制条件时,向第二转发节点发送传输控制帧,以控制第二转发节点向第一转发节点发送的数据包,其中,第二转发节点为第一转发节点的上游节点。存储单元920可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(ram)9201和/或高速缓存存储单元9202,还可以进一步包括只读存储单元(rom)9203。存储单元920还可以包括具有一组(至少一个)程序模块9205的程序/实用工具9204,这样的程序模块9205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。总线930可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。电子设备900也可以与一个或多个外部设备940(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备900交互的设备通信,和/或与使得该电子设备900能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口950进行。并且,电子设备900还可以通过网络适配器960与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器960通过总线930与电子设备900的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备900使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。通过以上的实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、终端装置、或者网络设备等)执行根据本公开实施方式的方法。特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机程序产品,该计算机程序产品包括:计算机程序,所述计算机程序被处理器执行时实现上述数据传输控制方法。在本公开的示例性实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质可以是可读信号介质或者可读存储介质,该计算机可读存储介质上存储有能够实现本公开上述方法的程序产品。在一些可能的实施方式中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。本公开中的计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(ram)、只读存储器(rom)、可擦式可编程只读存储器(eprom或闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本公开中,计算机可读存储介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。可选地,计算机可读存储介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、rf等等,或者上述的任意合适的组合。在具体实施时,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如java、c++等,还包括常规的过程式程序设计语言—诸如“c”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(lan)或广域网(wan),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。通过以上实施方式的描述,本领域的技术人员易于理解,这里描述的示例实施方式可以通过软件实现,也可以通过软件结合必要的硬件的方式来实现。因此,根据本公开实施方式的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是cd-rom,u盘,移动硬盘等)中或网络上,包括若干指令以使得一台计算设备(可以是个人计算机、服务器、移动终端、或者网络设备等)执行根据本公开实施方式的方法。本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由所附的权利要求指出。


背景技术:

1、现代数据中心应用需要达到毫秒级延迟和gbps级别的高吞吐量来满足客户需求。在互联网数据爆炸式增长的背景下,数据中心应用的网络传输面临着非常大的挑战,其中包括拥塞和队列溢出等问题。这些问题容易导致网络传输的意外丢包,从而损害网络应用的性能。为了解决网络传输中的丢包和性能下降问题,很多大型数据中心已经开始采用无损以太网技术,这种技术可以避免网络传输中的意外丢包:在网络侧中使用网络侧使用pfc(priority-based flow control,基于优先级的流量控制),也称为基于类的流量控制。是一种基于队列的反压机制,通过发送暂停帧通知转发设备的上游设备暂停发送数据包来防止缓存溢出丢包。

2、但采用无损以太网技术进行数据传输时,面临因暂停帧被触发时,转发设备中未拥塞的端口被上游设备停止数据传输,降低数据传输质量的问题,为此,需要一种能够提升数据传输质量的方法。

3、需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。


技术实现思路

1、本公开提供一种数据传输控制方法、装置、电子设备及存储介质,至少在一定程度上克服相关技术中因转发节点存在数据拥塞而导致数据传输质量下降的技术问题。

2、本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。

3、根据本公开的一个方面,提供了一种数据传输控制方法,包括:向数据传输链路上各个转发节点发送网络质量轮询数据包,其中,所述网络质量轮询数据包用于触发各个转发节点反馈传输数据的传输质量信息;接收所述数据传输链路上各个转发节点反馈的网络质量响应数据包,其中,每个转发节点反馈的网络质量响应数据包中包含:每个转发节点反馈传输数据的传输质量信息;根据各个转发节点反馈的网络质量响应数据包,确定各个转发节点传输数据的传输质量是否满足预设传输控制条件;当第一转发节点的传输质量满足预设传输控制条件时,向第二转发节点发送传输控制帧,以控制所述第二转发节点向所述第一转发节点发送的数据包,其中,所述第一转发节点为所述数据传输链路上任一个转发节点,所述第二转发节点为所述第一转发节点的上游节点。

4、在一些实施例中,所述向数据传输链路上各个转发节点发送网络质量轮询数据包,包括:在向数据传输链路上各个转发节点发送网络质量轮询数据包时,所述网络质量轮询数据包由数据发送端发送,其中,当所述数据发送端未发送业务数据包时,向所述数据传输链路上各个转发节点发送所述网络质量轮询数据包。

5、在一些实施例中,所述向数据传输链路上各个转发节点发送网络质量轮询数据包,包括:周期性向数据传输链路上各个转发节点发送网络质量轮询数据包。

6、在一些实施例中,所述接收所述数据传输链路上各个转发节点反馈的网络质量响应数据包,包括:接收包含所述每个转发节点的传输质量信息的网络质量响应数据包,其中,所述传输质量信息包括所述每个转发节点的数据处理速度、所述每个转发节点的数据包转发队列长度。

7、在一些实施例中,所述根据各个转发节点反馈的网络质量响应数据包,确定各个转发节点传输数据的传输质量是否满足预设传输控制条件,包括:判断各个转发节点反馈的网络质量响应数据包中是否存在数据包转发队列长度超出预设的长度阈值的目标网络质量响应数据包;若存在,则确定发送所述目标网络质量响应数据包的转发节点传输数据的传输质量满足所述预设传输控制条件。

8、在一些实施例中,在向数据传输链路上各个转发节点发送网络质量轮询数据包之后,所述方法还包括:若发送的所述网络质量轮询数据包的个数达到预设的网络质量轮询数据包个数阈值且仍未接收到任一个转发节点反馈的网络质量响应数据包,则确定所述数据传输链路存在异常,输出所述数据传输链路存在异常的提示信息。

9、在一些实施例中,所述当第一转发节点的传输质量满足预设传输控制条件时,向第二转发节点发送传输控制帧,以控制所述第二转发节点向所述第一转发节点发送的数据包,包括:获取所述第二转发节点向所述第一转发节点发送的数据包的优先级信息;获取不同优先级信息对应的数据包的转发队列占用率;将获取到的所述不同优先级信息对应的数据包的转发队列占用率,分别与所述不同优先级信息对应的数据包对应的预设转发队列占用率阈值进行比较;若所述不同优先级信息对应的数据包的转发队列占用率达到对应的预设转发队列占用率阈值,则控制所述第二转发节点暂停向第一转发节点发送所述转发队列占用率达到对应的预设转发队列占用率阈值的优先级信息对应的数据包;若所述不同优先级信息对应的数据包的转发队列占用率达到预设的转发停止阈值,则控制所述第二转发节点暂停向所述第一转发节点发送数据包。

10、在一些实施例中,在控制所述第二转发节点暂停向所述第一转发节点发送数据包之后,所述方法还包括:当所述第一转发节点中达到所述预设的转发停止阈值的转发队列占用率对应的数据包的转发队列占用率降低至预设的转发开始阈值时,恢复所述第二转发节点向所述第一转发节点发送数据包。

11、根据本公开的另一个方面,还提供了一种数据传输控制装置,包括:网络质量轮询数据包发送模块,被配置为向数据传输链路上各个转发节点发送网络质量轮询数据包,其中,所述网络质量轮询数据包用于触发各个转发节点反馈传输数据的传输质量信息;网络质量响应数据包接收模块,被配置为接收所述数据传输链路上各个转发节点反馈的网络质量响应数据包,其中,每个转发节点反馈的网络质量响应数据包中包含:每个转发节点反馈传输数据的传输质量信息;节点传输质量确定模块,被配置为根据各个转发节点反馈的网络质量响应数据包,确定各个转发节点传输数据的传输质量是否满足预设传输控制条件;数据传输控制模块,被配置为当第一转发节点的传输质量满足预设传输控制条件时,向第二转发节点发送传输控制帧,以控制所述第二转发节点向所述第一转发节点发送的数据包,其中,所述第一转发节点为所述数据传输链路上任一个转发节点,所述第二转发节点为所述第一转发节点的上游节点。

12、根据本公开的另一个方面,还提供了一种电子设备,该电子设备包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一项所述的数据传输控制方法。

13、根据本公开的另一个方面,还提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的数据传输控制方法。

14、根据本公开的另一个方面,还提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述任意一项的数据传输控制方法。

15、本公开的实施例中提供的数据传输控制方法、装置、电子设备及存储介质,通过向数据传输链路上各个转发节点发送网络质量轮询数据包来触发各个转发节点反馈传输数据的传输质量信息;在接收到数据传输链路上各个转发节点反馈的包含的传输质量信息网络质量响应数据包后,根据各个转发节点反馈的网络质量响应数据包,确定各个转发节点传输数据的传输质量是否满足预设传输控制条件;当任一转发节点(第一转发节点)的传输质量满足预设传输控制条件时,向该转发节点的上游节点(第二转发节点)发送传输控制帧,以控制上游节点向该转发节点发送的数据包。

16、通过本公开实施例,能够准确获知数据传输链路中各个转发节点的数据传输质量,以便在某个转发节点存在数据拥塞时,控制该转发节点的上游节点向其发送的数据包,避免因转发节点存在数据拥塞而导致的数据传输质量下降。

17、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1