CN115086177A - 数据传输方法、装置、电子设备及存储介质 - Google Patents
数据传输方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN115086177A CN115086177A CN202110276013.1A CN202110276013A CN115086177A CN 115086177 A CN115086177 A CN 115086177A CN 202110276013 A CN202110276013 A CN 202110276013A CN 115086177 A CN115086177 A CN 115086177A
- Authority
- CN
- China
- Prior art keywords
- length
- message
- time
- sent
- service flow
- 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
- 230000005540 biological transmission Effects 0.000 title claims abstract description 219
- 238000000034 method Methods 0.000 title claims abstract description 68
- 238000011217 control strategy Methods 0.000 claims abstract description 49
- 230000015654 memory Effects 0.000 claims description 15
- 230000000977 initiatory effect Effects 0.000 claims description 12
- 238000004364 calculation method Methods 0.000 claims description 8
- 238000004590 computer program Methods 0.000 claims description 5
- 239000002699 waste material Substances 0.000 description 8
- 238000010586 diagram Methods 0.000 description 7
- 238000004891 communication Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000005457 optimization Methods 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 238000004422 calculation algorithm Methods 0.000 description 2
- 239000013078 crystal Substances 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000010295 mobile communication Methods 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
- 239000007787 solid Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
Images
Classifications
-
- 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/0894—Policy-based network configuration management
-
- 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/0893—Assignment of logical groups to network elements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/38—Flow based routing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/74—Address processing for routing
-
- 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/22—Traffic shaping
-
- 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/24—Traffic characterised by specific attributes, e.g. priority or QoS
- H04L47/2416—Real-time traffic
-
- 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
-
- 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/36—Flow control; Congestion control by determining packet size, e.g. maximum transfer unit [MTU]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例提供数据传输方法、装置、电子设备及存储介质。其中,数据传输方法包括:获取当前时间信息;获取当前待发送业务流的报文属性信息;根据所述当前时间信息和所述报文属性信息,生成传输控制策略;根据所述传输控制策略控制时间敏感网络中的业务流传输。本申请实施例通过依据当前时间信息和当前待发送业务流的报文属性信息,生成传输控制策略控制业务流传输,实现了在不破坏时间敏感业务流传输的实时性和确定性的前提下,有效提高带宽利用率。
Description
技术领域
本申请实施例涉及通信技术领域,尤其涉及数据传输方法、装置、电子设备及存储介质。
背景技术
时间敏感网络(Time-Sensitive Networking,TSN)是由电气和电子工程师协会(Institute of Electrical and Electronics Engineers,IEEE)802.1的TSN工作小组发展的标准。该标准主要定义以太网上的时间敏感传输的机制,TSN技术特别注重传输的确定性时延、低时延以及高可用性。
为了确保时间敏感业务流(如TT(Time-triggered,时间触发)业务流)传输的实时性和确定性,通常会采用传输控制策略(如带宽资源预留策略)对业务数据进行控制,然而,相关技术中的传输控制策略容易造成带宽的浪费。
发明内容
以下是对本文详细描述的主题的概述。本概述并非是为了限制权利要求的保护范围。
本申请实施例提供数据传输方法、装置、电子设备及存储介质,能够在不破坏时间敏感业务流传输的实时性和确定性的前提下,有效提高带宽利用率。
第一方面,本申请提供一种数据传输方法,包括:
获取当前时间信息;
获取当前待发送业务流的报文属性信息;
根据所述当前时间信息和所述报文属性信息,生成传输控制策略;
根据所述传输控制策略控制时间敏感网络中的业务流传输。
第二方面,本申请还提供一种数据传输装置,包括:
时间获取模块,用于获取当前时间信息;
报文属性获取模块,用于获取当前待发送业务流的报文属性信息;
策略生成模块,用于根据所述当前时间信息和所述报文属性信息,生成传输控制策略;
传输模块,用于根据所述传输控制策略控制时间敏感网络中的业务流传输。
第三方面,本申请还提供电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如第一方面所述的数据传输方法。
第四方面,本申请还提供计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于:
执行第一方面所述的数据传输方法。
本申请实施例第一方面提供一种数据传输方法,所述方法包括:获取当前时间信息;获取当前待发送业务流的报文属性信息;根据所述当前时间信息和所述报文属性信息,生成传输控制策略;根据所述传输控制策略控制时间敏感网络中的业务流传输。本申请实施例通过依据当前时间信息和当前待发送业务流的报文属性信息,生成传输控制策略控制业务流传输,实现了在不破坏时间敏感业务流传输的实时性和确定性的前提下,有效提高带宽利用率。
可以理解的是,上述第二方面至第四方面与相关技术相比存在的有益效果与上述第一方面与相关技术相比存在的有益效果相同,可以参见上述第一方面中的相关描述,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请实施例的一些实施例,对于本领域普通技术人员来说,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是TSN网络业务流冲突时序原理示意图;
图2是TSN网络保护带策略时序原理示意图;
图3是TSN网络帧抢占式策略时序原理示意图;
图4是本申请用于执行数据传输方法的软件系统架构的示意图;
图5是本申请一个实施例提供的数据传输方法的流程示意图;
图6是本申请另一个实施例提供的数据传输方法的流程示意图;
图7是本申请另一个实施例提供的数据传输方法的流程示意图;
图8是本申请另一个实施例提供的数据传输方法的流程示意图;
图9是本申请一个实施例剩余时间传输策略和优化抢占式传输策略的时序原理示意图;
图10是本申请另一个实施例提供的数据传输方法的流程示意图;
图11是本申请另一个实施例提供的数据传输方法的流程示意图;
图12是本申请一个实施例提供的数据传输装置的结构示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请实施例。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请实施例的描述。
需要说明的是,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于流程图中的顺序执行所示出或描述的步骤。说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
还应当理解,在本申请实施例说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请实施例的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
时间敏感网络TSN(Time-Sensitive Networking)具有广泛的应用前景。TSN引入时间触发的传输机制,调度数据(如工业控制数据)在设备(如交换机)中的精确发送时间点。实时业务流在精准的时间点进行传输,因而被称为时间敏感业务流;非实时业务流在时间敏感业务流的间隙中传输,因而被称为非时间敏感业务流。
为了确保时间敏感业务流传输的实时性和确定性,通常会采用传输控制策略对业务数据进行控制,然而,相关技术中的传输控制策略容易造成带宽的浪费,例如以下三种情况:
(1)时间敏感业务流的预留带宽无法被利用。相关技术中的传输控制策略会为时间敏感业务流的预留带宽,以实现实时业务流的精准发送;但是当实时业务流缺失时,相关技术中的传输控制策略仍然会保持窗口时长的预留带宽,造成带宽的浪费。例如,设f1…fm是缺失的实时业务流,它们造成的预留带宽损失(ReservedLoss)总和为:
其中,fi.length和fi.period分别表示实时业务流fi的报文长度和发送周期。
(2)相关技术中的保护带策略(Guard Band)引发了极大的带宽浪费:如图1所示,在时间敏感业务流的开始时间oi处,非时间敏感业务流正好正在发送,为了解决该冲突,使用保护带策略,如图2所示,它在时间敏感业务流的开始时间oi到来之前设置保护时间Δt,即在oi-Δt处,通知关闭非时间敏感业务流队列的传输门控,这个保护时间Δt足以保证任意正在发送的非时间敏感业务流报文发送完毕,这样就能保证时间敏感业务流与非时间敏感业务流的无冲突传输。因此,保护时间Δt称为保护带,它的大小一般为非时间敏感业务流报文的最大长度,图2中示意了损失的带宽LOSS。
(3)相关技术中的抢占式策略(Preemption)引入额外的时延抖动,破坏了时间敏感业务流的确定性:如图3所示,当时间敏感业务流与非时间敏感业务流冲突时,首先时间敏感业务流在发送时刻截断非时间敏感业务流报文,然后在截断的报文处填充上4字节的CRC校验码结束非时间敏感业务流的发送,接着开始时间敏感业务流的传输,最后待时间敏感业务流发送完毕(oi+wi)再发送非时间敏感业务流被截断的剩余部分报文。每次抢占都将引入4字节的时延抖动Jitter。而且抢占式策略为了保证截断的报文是一个合法的以太网帧,要求截断后的两部分报文长度均不能少于以太网最小帧长度64字,因此,可被截断的以太网报文最小帧长度为60+64=124字节;于是当报文长度小于124字节时,这时引入的抖动最坏情况是整个非时间敏感业务流的报文长度。另外,由于报文被截断,原本一个报文被分成了两个报文发送,因而需额外传输的数据包括填充的CRC校验码(4字节)+最小帧间间隔(12字节)+前导码(6字节)+抢占帧起始符(1字节)+帧序号(1字节),共计24字节,这些是帧抢占策略引发的带宽损失。
基于此,本申请实施例提供数据传输方法、装置、电子设备及存储介质,本申请实施例通过依据当前时间信息和当前待发送业务流的报文属性信息,生成传输控制策略控制业务流传输,实现了在不破坏时间敏感业务流传输的实时性和确定性的前提下,有效提高带宽利用率。能够在不破坏时间敏感业务流传输的实时性和确定性的前提下,有效提高带宽利用率。
本申请一个实施例提供的数据传输方法可以在处理器中执行,处理器可以包括一个或多个处理单元。不同的处理单元可以是独立的器件,也可以集成在一个或多个器件中。
下面结合附图,对本申请实施例作进一步阐述。
如图4所示,图4是本申请一个实施例提供的用于执行数据传输方法的软件系统架构的示意图。在图4的示例中,该系统架构为基于TSN标准802.1Qbv时态感知流量整形器(Time-aware Shaper,简称TAS)系统架构,包括门控单元100、至少一个时间敏感业务流队列200、至少一个非时间敏感业务流队列300、多个队列开关400和输出选择单元500。例如,TSN可调度数据(如工业控制数据)在设备(如交换机)中的精确发送时间点,可将调度的结果转化为设备(如交换机)的配置信息,即调度表;TSN标准802.1Qbv定义了时态感知流量整形器(Time-Aware Shaper,TAS)来解释和执行调度表。调度表的表项通常有窗口wi(,即窗口持续的时间,下文称为报文长度)、开始时间oi(即窗口开始时间)、数据流fi,…fi,(即窗口持续时间内需要传输的时间敏感业务流)和队列开关400状态列表(即开关列表,由0或1组成,0表示门控打开,1表示门控关闭,又称为门控列表Gate Control List,简称GCL)。调度表以窗口开始时间为序,依次执行,通过GCL控制不同队列对应的门控开关(即队列开关400):在窗口的开始时间打开对应数据流的门控开关,同时关闭其它队列的开关,实现时间敏感业务流在调度的时间点精准发送;当时间敏感业务流发送完毕,通过GCL控制对应门控开关关闭,同时打开其它队列的开关,这时非时间敏感业务流进行传输;当调度表执行完最后一个表项,又从第一个表项开始,周期性地循环。
其中,门控单元100用于解析调度表,并根据调度表输出指令控制各个队列开关400的状态,以控制消息队列中的业务流传输。调度表可以是存储在本地的调度表,也可以是远程获取得到的调度表,本申请对此不做限定。门控单元100的输出端分别与各个队列开关400的输入端连接,用于输出指令控制各个队列开关400的状态。在一些实施例中,门控单元100的输出端与输出选择单元500的输入端连接,用于将调度表信息提供给输出选择单元500,以使得输出选择单元500根据调度表信息生成传输控制策略;例如,门控单元100提供即将执行的调度表项的开始执行时间给到输出选择单元500,以使输出选择单元500根据即将执行的调度表项的开始执行时间生成剩余时间传输策略和/或优化抢占式控制策略。在另一些实施例中,门控单元100的输入端与时间敏感业务流队列200的输出端连接,用于接收来自时间敏感业务流队列200的当前待发送业务流的报文属性信息,以根据当前待发送业务流的报文属性信息和调度表信息生成传输控制策略;例如,门控单元100接收来自时间敏感业务流队列200的当前待发送业务流的报文属性信息,判断当前待发送业务流的报文属性信息与预传输时间敏感业务流的报文属性信息是否匹配,以生成预留带宽重用策略。
时间敏感业务流队列200用于缓存时间敏感业务流。时间敏感业务流队列200可以有多个,多个时间敏感业务流队列200可以设置不同的优先级,如图4所示,m个TT业务流队列的优先级从优先级1至优先级m。时间敏感业务流队列200中,位于队头的时间敏感业务流为队头报文,队头报文优先发送。在一些实施例中,各个时间敏感业务流队列200的输出端均通过队列开关400(门控开关)连接到输出选择单元500,用于将时间敏感业务流通过队列开关400和输出选择单元500后发送。在一些实施例中,各个时间敏感业务流队列200的输出端均与门控单元100的输入端连接,用于提供当前待发送业务流的报文属性信息给门控单元100,以使门控单元100根据当前待发送业务流的报文属性信息和调度表信息生成传输控制策略;例如,时间敏感业务流队列200提供当前待发送业务流的ID信息,以使门控单元100判断当前待发送业务流的ID信息与预传输时间敏感业务流的ID信息是否匹配,以生成预留带宽重用策略。
非时间敏感业务流队列300用于缓存非时间敏感业务流。非时间敏感业务流队列300可以有多个,多个非时间敏感业务流队列300可以设置不同的优先级,如图4所示,n个TT业务流队列的优先级从优先级m+1至优先级m+n。非时间敏感业务流队列300中,位于队头的非时间敏感业务流为队头报文,队头报文优先发送。在一些实施例中,各个非时间敏感业务流队列300的输出端均通过队列开关400(门控开关)连接到输出选择单元500,用于将非时间敏感业务流通过队列开关400和输出选择单元500后发送。在一些实施例中,各个非时间敏感业务流队列300的输出端均与输出选择单元500的输入端连接,用于提供当前待发送业务流的报文属性信息给输出选择单元500,以使输出选择单元500根据当前待发送业务流的报文属性信息和调度表信息生成传输控制策略;例如,非时间敏感业务流队列300提供当前待发送业务流的报文长度给输出选择单元500,以使输出选择单元500根据当前待发送业务流的报文长度和即将执行的调度表项的开始执行时间,生成剩余时间传输策略和/或优化抢占式控制策略。
队列开关400也可称为门控开关,队列开关400的数量与业务流队列的数量匹配,各个队列开关400连接于业务流队列与输出选择单元500之间。队列开关400的控制输入端与门控单元100的输出端连接,用于根据门控单元100的指令切换开关状态,以控制对应业务流队列的当前待发送业务流是否发送。其中,业务流队列可以是时间敏感业务流队列200,也可以是非时间敏感业务流队列300。
输出单元的输入端与各个队列的输出端连接,输出选择单元500用于控制业务流的发送。其中,业务流可以是时间敏感业务流,也可以是非时间敏感业务流。在一些实施例中,在一些实施例中,输出选择单元500的输入端与门控单元100的输出端连接,用于获取来自门控单元100的调度表信息;输出选择单元500的另一个输入端与非时间敏感业务流队列300的输出端连接,用于获取来自非时间敏感业务流队列300的当前待发送业务流的报文长度;输出选择单元500可根据当前待发送业务流的报文长度和即将执行的调度表项的开始执行时间,生成剩余时间传输策略和/或优化抢占式控制策略。
本申请实施例描述的系统架构以及应用场景是为了更加清楚的说明本申请实施例的技术方案,并不构成对于本申请实施例提供的技术方案的限定,本领域技术人员可知,随着系统架构的演变和新应用场景的出现,本申请实施例提供的技术方案对于类似的技术问题,同样适用。
本领域技术人员可以理解的是,图4中示出的系统架构并不构成对本申请实施例的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
在图4所示的系统架构中,各个部件可以分别调用其储存的数据传输程序,以执行数据传输方法。
基于上述系统架构,提出本申请实施例的数据传输方法的各个实施例。需要说明的是,以下各个实施例中,时间敏感业务流可以是TT(Time-Triggered,时间触发)业务流等;非时间敏感业务流可以是BE(Best-Effort,尽力而为)业务流,也可以是RC(Rate-Constrained,速率约束)业务流等。以下实施例仅以时间敏感业务流为TT业务流;非时间敏感业务流为BE业务流为例进行说明。
如图5所示,本申请实施例提供了一种数据传输方法,包括:
步骤S1100,获取当前时间信息;
步骤S1200,获取当前待发送业务流的报文属性信息;
步骤S1300,根据当前时间信息和报文属性信息,生成传输控制策略;
步骤S1400,根据传输控制策略控制时间敏感网络中的业务流传输。
在一些实施例中,为了解决当前时间敏感业务流传输与非时间敏感业务流传输混合传输的带宽浪费和时延抖动问题,本申请实施例通过结合当前时间信息和当前待发送业务流的报文属性信息,提供面向TSN的预测式混合传输控制策略。预测式混合传输控制策略(传输控制策略)包括但不限于以下的一个或多个策略:预留带宽重用策略、剩余时间传输策略和优化抢占式控制策略。将在下文实施例中展开说明。
在一些实施例中,当前待发送业务流可以是时间敏感业务流,也可以是非时间敏感业务流。其中,时间敏感业务流可以是TT(Time-Triggered,时间触发)业务流等;非时间敏感业务流可以是BE(Best-Effort,尽力而为)业务流,也可以是RC(Rate-Constrained,速率约束)业务流等。报文属性信息可以包括以下的一种或多种:业务流报文的业务流ID信息、报文长度等。
本申请实施例通过依据当前时间信息和当前待发送业务流的报文属性信息,生成传输控制策略控制业务流传输,实现了在不破坏时间敏感业务流传输的实时性和确定性的前提下,有效提高带宽利用率。能够在不破坏时间敏感业务流传输的实时性和确定性的前提下,有效提高带宽利用率。
在一些实施例中,当前待发送业务流为非时间敏感业务流,报文属性信息包括报文长度。
如图6所示,在一些实施例中,步骤S1300,根据当前时间信息和报文属性信息,生成传输控制策略,包括:
步骤S1310,根据当前时间信息和下一个时间敏感业务流的开始时间,计算得到剩余时间可发送报文长度;
步骤S1320,根据剩余时间可发送报文长度和报文长度,生成传输控制策略。
在一些实施例中,步骤S1310中,剩余时间可发送报文长度可以是下一个时间敏感业务流(如调度表中即将执行的时间敏感业务流)的开始时间oi与当前时间信息tn之差,即Δt=oi-tn。例如,若当前时间信息为上一个时间敏感业务流的发送完毕时刻,则剩余时间可发送报文长度Δt为两个时间敏感业务流之间的发送间隙,即Δt=oi-(oi-1+wi-1);其中,oi-1为上一个时间敏感业务流(如调度表中刚执行完毕的时间敏感业务流)的开始时间,wi-1为上一个时间敏感业务流(如调度表中刚执行完毕的时间敏感业务流)的持续时间,即报文长度,oi-1+wi-1为上一个时间敏感业务流的发送完毕时刻,即当前时间信息tn。若当前时间信息为上一个非时间敏感业务流的发送完毕时刻,可通过下一个时间敏感业务流(如调度表中即将执行的时间敏感业务流)的开始时间oi与当前时间信息tn之差,即Δt=oi-tn计算得到剩余时间可发送报文长度Δt;也可以通过Δtn=Δtn-1-BEn-1.length迭代计算得到新的剩余时间可发送报文长度Δt,其中,Δtn为更新的剩余时间可发送报文长度,Δtn-1为上一次计算得到的剩余时间可发送报文长度,BE.lengthn-1为上一个非时间敏感业务流的发送完毕时刻,即当前时间信息tn。需要说明的是,在一些实施例中,当前时间信息对应的业务流(时间敏感业务流或非时间敏感业务流)发送状态为空闲。
在一些实施例中,步骤S1320中,可以根据剩余时间可发送报文长度Δt和报文长度BE.length,生成传输控制策略。例如,可以对比剩余时间可发送报文长度Δt和报文长度BE.length的大小,从而确定剩余时间可发送报文长度Δt是否足以发送当前待发送业务流。
在一些实施例中,步骤S1100至步骤S1400可以在如图4所示的软件系统架构中的输出选择单元中执行。
如图7所示,在一些实施例中,根据当前时间信息和下一个时间敏感业务流的开始时间,计算得到剩余时间可发送报文长度之前,还包括:
步骤S1330,查询调度表,获取下一个时间敏感业务流的开始时间。
在一些实施例中,下一个时间敏感业务流的开始时间oi可以通过查询调度表获取得到。例如,步骤S1100至步骤S1400可以在如图4所示的软件系统架构中的输出选择单元中执行。输出选择单元可以通过与门控单元通信连接获取门控单元中的调度表信息,从而获取下一个时间敏感业务流的开始时间oi。
如图8和图9所示,在一些实施例中,步骤S1320,根据剩余时间可发送报文长度和报文长度,生成传输控制策略,包括:
步骤S1321,根据剩余时间可发送报文长度和报文长度,判断剩余时间可发送报文长度是否足以发送当前待发送业务流BEn-1,若是,执行步骤S1322,否则执行步骤S1323;
步骤S1322,发送当前待发送业务流BEn-1;
重复执行下列步骤,直至剩余时间可发送报文长度不足以发送当前待发送业务流BEN:
步骤S1100,再次获取当前时间信息;
步骤S1200,再次获取当前待发送业务流的报文属性信息;
步骤S1310,根据当前时间信息和下一个时间敏感业务流的开始时间,计算得到剩余时间可发送报文长度;
步骤S1320,根据剩余时间可发送报文长度和报文长度,判断剩余时间可发送报文长度是否足以发送当前待发送业务流BEn,若是,执行步骤S1322,否则执行步骤S1323;
步骤S1322,发送当前待发送业务流BEn,重复执行步骤S1100至步骤S1320。
步骤S1323,等待剩余时间可发送报文长度耗尽。例如,可以通过发送抢占指令,以耗尽剩余时间可发送报文长度,再发送下一个时间敏感业务流。
在一些实施例中,传输控制策略为剩余时间传输策略。
以下实施例仅以时间敏感业务流为TT业务流;非时间敏感业务流为BE业务流为例进行说明。在一些实施例中,BE业务流总是在TT业务流的间隙中发送的,而这个间隙的时间是可以预测的:如图9所示,图9示意了调度表中的相邻两个表项(i-1)与i,当第i-1个表项控制传输门发送TT业务流完毕时,BE业务流开始发送,直到第i个表项开始执行,这段发送BE业务流的时间就是这个间隙,即图中的第一个剩余时间可发送报文长度Δt0,从第i-1个表项执行的结束时间oi-1+wi-1到第i个表项开始执行时间oi。其中,上述表项即调度表表项,一个调度表表项用于记录一个TT业务流的调度相关信息,表项(i-1)对应记录第i-1个TT业务流的调度相关信息,表项i对应记录第i个TT业务流的调度相关信息。
因此,基于TT业务流的间隙是可预测的,本申请实施例设计的剩余时间传输策略如下:
步骤1-1:当第i-1个表项的TT业务流发送完毕时,执行步骤S1310,初始化BE业务流的发送间隙Δt,即第一个剩余时间可发送报文长度Δt0,也即第i-1个表项的结束时间oi-1+wi-1到第i个表项开始执行的时间oi,Δt0=oi-(oi-1+wi-1)。
步骤1-2:执行步骤S1320,判断剩余时间可发送报文长度Δt0是否足以完整发送BE业务流队列的队头报文BEn-1(当前待发送业务流),如果可以则执行步骤1-3,否则执行步骤1-5。
步骤1-3:执行步骤S1322,发送BE业务流队列的队头报文BEn-1。
步骤1-4:步骤S1310,更新剩余时间可发送报文长度Δtn=Δtn-1-BEn-1.length,执行步骤1-2。
步骤1-5:执行步骤S1323,等待剩余时间可发送报文长度耗尽,开始执行调度表第i个表项,令i=i+1,回到步骤1-1。例如,可以通过发送抢占指令,以耗尽剩余时间可发送报文长度,再发送下一个时间敏感业务流。
剩余时间传输策略让TT业务流的间隙尽可能多的发送BE业务流,直到剩余时间不足以发送一个完整的BE报文。
剩余时间传输策略采用了可迭代使用的剩余时间,相比于802.1Qbv中提出的保护带策略,可以迭代使用TT业务流间的间隙直到剩余时间不足以发送当前的BE业务流。该策略的核心改进点是利用剩余时间去适应BE业务流的报文长度,而不是向保护带策略那样选择最大报文长度作为保护带的固定长度。
在一些实施例中,步骤S1310,根据当前时间信息和下一个时间敏感业务流的开始时间,计算得到剩余时间可发送报文长度,包括:
步骤S1311,根据当前时间信息、下一个时间敏感业务流的开始时间、传输约束参数和第一计算公式,计算得到剩余时间可发送报文长度;其中,第一计算公式包括:
剩余时间可发送报文长度=下一个时间敏感业务流的开始时间与当前时间信息的差值对应的可发送报文长度-传输约束参数。
在一些实施例中,需要考虑满足以太网报文传输的传输约束参数,如最小帧间间隔、帧起始符长度、前导码长度和帧序号等,即前述的剩余时间可发送报文长度需要再减除传输约束参数,才是实际可供BE业务流传输的传输时间长度。
在一些实施例中,传输约束参数包括最小帧间间隔、帧起始符长度、前导码长度和帧序号;对应的,第一计算公式包括:
剩余时间可发送报文长度=下一个时间敏感业务流的开始时间与当前时间信息的差值对应的可发送报文长度-最小帧间间隔-帧起始符长度-前导码长度-帧序号。
在一些实施例中,最小帧间间隔为12字节,前导码长度为6字节,帧起始符长度为1字节、帧序号为1字节,共20字节,即传输约束参数为20字节。在上述步骤S1310和步骤1-4的剩余时间可发送报文长度计算中,均需要减去传输约束参数为20字节。
如图10所示,在一些实施例中,步骤S1320,根据剩余时间可发送报文长度和报文长度,生成传输控制策略,包括:
步骤S1324,根据剩余时间可发送报文长度和报文长度,判断剩余时间可发送报文长度是否足以发送当前待发送业务流;
步骤S1325,若剩余时间可发送报文长度不足以发送当前待发送业务流,则根据剩余时间可发送报文长度、报文长度、抢占约束条件参数,生成抢占式控制策略。
在一些实施例中,传输控制策略为优化抢占式控制策略。为了进一步降低剩余时间传输策略引发的带宽损失,同时不造成任何额外的时延抖动,如图9所示,当剩余时间可发送报文长度ΔtN不足以将报文BEN完整发送时,引入优化抢占式控制策略。优化抢占式控制策略根据剩余时间可发送报文长度ΔtN和报文长度BEN.length,预测抢占位置Position(即发送所述当前待发送业务流,并在所述剩余时间可发送报文长度中的预设位置Position发起抢占指令,以停止(截断)发送所述当前待发送业务流,设传输部分当前待发送业务流的第一比特对应的位置为1),以最小化带宽损失。在一些实施例中,抢占式策略需要满足抢占约束条件参数,抢占约束条件参数包括传输最小帧长度、可被截断报文最小帧长度和抢占CRC检验字段长度等。例如,为了保证被截断的报文是一个合法的以太网帧,要求被截断后的两部分报文长度均不能少于以太网最小帧长度,因此,剩余时间可发送报文长度ΔtN不能小于最小帧长度要求,当前待发送的BE业务流BEN报文长度不能小于可被截断报文最小帧长度。
在一些实施例中,优化抢占式控制策略具体如下:
在一些实施例中,抢占约束条件参数包括传输最小帧长度和可被截断报文最小帧长度;
在一些实施例中,抢占式控制策略包括:
步骤S1325-A,若报文长度不满足可被截断报文最小帧长度,则耗尽剩余时间可发送报文长度。例如,可被截断报文最小帧长度为124字节,即当BEN.length<124时,BEN无法被截断,无法实现抢占,带宽损失为ΔtN,Position为0。
步骤S1325-B,若剩余时间可发送报文长度不满足传输最小帧长度,则耗尽剩余时间可发送报文长度。例如,传输最小帧长度为64字节,即当ΔtN<64时,BEN无法被截断,无法实现抢占,带宽损失为ΔtN,Position为0。
步骤S1325-C,若报文长度满足可被截断报文最小帧长度,且剩余时间可发送报文长度满足传输最小帧长度,则在发送所述当前待发送业务流,并在所述剩余时间可发送报文长度中的预设位置发起抢占指令,以停止发送(截断)所述当前待发送业务流,从而确保实时发送下一个TT业务流。例如,可被截断报文最小帧长度为124字节,传输最小帧长度为64字节,即当BEN.length≥124,ΔtN≥64时,则在剩余时间可发送报文长度中的预设位置Position之前发送部分当前待发送业务流,并在预设位置Position截断,实现抢占,从而确保实时发送下一个TT业务流。
在一些实施例中,在一些实施例中,抢占约束条件参数还包括抢占CRC检验字段长度;
步骤S1325-C,在剩余时间可发送报文长度中的预设位置传输部分当前待发送业务流,包括:
步骤S1325-C1,若所述报文长度与所述抢占CRC检验字段长度之和,大于或等于所述剩余时间可发送报文长度与所述传输最小帧长度之和,所述预设位置为所述剩余时间可发送报文长度与所述抢占CRC检验字段长度之差;对应的,所述在所述剩余时间可发送报文长度中的预设位置发起抢占指令,包括:在发送所述剩余时间可发送报文长度减去抢占CRC检验字段长度的报文后发起抢占指令。
例如,可被截断报文最小帧长度为124字节,传输最小帧长度为64字节,抢占CRC检验字段长度为4字节。其中,抢占CRC检验字段为CRC校验码。即当BEN.length≥124,ΔtN≥64,BEN.length-(ΔtN-4)≥64时,在发送所述剩余时间可发送报文长度ΔtN减去抢占CRC检验字段长度(4字节)的报文(即当前待发送业务流中的一部分)后发起抢占指令,实现抢占,抢占位置Position=(ΔtN-4),带宽损失为帧抢占引发的额外带宽消耗24字节,即CRC校验码(4字节)+最小帧间间隔(12字节)+前导码(6字节)+抢占帧起始符(1字节)+帧序号(1字节)。
步骤S1325-C2,若所述报文长度与所述抢占CRC检验字段长度之和,小于所述剩余时间可发送报文长度与所述传输最小帧长度之和,所述预设位置为所述报文长度与所述传输最小帧长度之差;对应的,所述在所述剩余时间可发送报文长度中的预设位置发起抢占指令,包括:在发送所述报文长度减去所述传输最小帧长度的报文后发起抢占指令。其中,抢占CRC检验字段为CRC校验码。即当BEN.length≥124,ΔtN≥64,BEN.length-(ΔtN-4)<64时,在剩余时间可发送报文长度中的预设位置Position之前发送部分当前待发送业务流(发送所述报文长度BEN.length减去传输最小帧长度(如64字节)的报文(即当前待发送业务流中的一部分)后发起抢占指令),实现抢占,抢占位置Position=BEN.length-64,带宽损失为ΔtN-(BEN.length-64)+24=ΔtN-BEN.length+88。
综上,以可被截断报文最小帧长度为124字节,传输最小帧长度为64字节,抢占CRC检验字段长度为4字节为例,优化抢占式控制策略具体如下:
当BEN.length<124时,BEN无法实现抢占,带宽损失为ΔtN,position为0;
当BEN.length≥124,ΔtN<64时,BEN无法实现抢占,带宽损失为ΔtN,position为0;
当BEN.length≥124,ΔtN≥64,BEN.length-(ΔtN-4)≥64时,BEN实现抢占,抢占位置为position=(ΔtN-4),带宽损失为帧抢占引发的额外带宽消耗24字节;
当BEN.length≥124,ΔtN≥64,BEN.length-(ΔtN-4)<64时,BEN实现抢占,抢占位置为position=BEN.length-64,带宽损失为ΔtN-(BEN.length-64)+24=ΔtN-BEN.length+88。
于是,有优化抢占式控制策略公式(1):
在一些实施例中,剩余时间传输策略与优化抢占式控制策略可结合形成如下的执行流程:
步骤2-1:当第i-1个表项的TT业务流发送完毕时,执行步骤S1310,初始化BE业务流的发送间隙Δt,即第i-1个表项的结束时间oi-1+wi-1到第i个表项开始执行的时间oi,Δt=oi-(oi-1+wi-1)。
步骤2-2:执行步骤S1320,判断间隙Δt是否足以完整发送BE业务流队列的队头报文,如果可以则执行步骤2-3,否则执行步骤2-5。
步骤2-3:发送BE业务流队列的队头报文。
步骤2-4:更新间隙Δt=Δt-BE.length,执行步骤2-2。
步骤2-5:根据优化抢占式控制策略公式(1),在BE报文的Position位置处发生抢占。
步骤2-6:待剩余时间耗尽,开始执行调度表第i个表项,令i=i+1,回到步骤2-1。
优化抢占式控制策略利用剩余时间传输策略中不足以发送一个完整BE报文的剩余时间来尽可能多的发送报文,从而进一步避免了带宽的浪费。
在一些实施例中,预测式混合传输控制策略中的优化抢占式控制策略用于改进剩余时间传输策略,进一步降低带宽损失。优化抢占式控制策略在剩余时间不足以完整发送当前BE业务流报文时,通过选择最佳的抢占位置,进一步降低带宽损失,兼具了802.1Qbu帧抢占策略的降低带宽损失的优点,同时又避免了由于帧抢占而引起的时延抖动。
下面以示例一为例进一步说明剩余时间传输策略和优化抢占式控制策略。
如图9所示,剩余时间传输策略和优化抢占式控制策略的实现可放在TAS的输出选择单元中,输出选择单元需要从门控单元获取即将执行的调度表项的开始执行时间,而且需要从BE业务流队列获取队头报文的报文长度,共计4个状态。下面通过示例一说明剩余时间传输策略和优化抢占式控制策略的执行过程。
示例一
A.调度表的配置如表一:
表一:示例一的调度表
B.队列状态
a)0号队列(TT业务流队列)中存储的队头表项{ID,length,缓存池地址}为:{47,512,0x718}
b)1号BE业务流队列存储了一个长度为1518字节的报文待发送,2号队列存储了2个长度为512字节的报文待发送。
c)其它BE业务流队列为空。
C.端口速率为1Gbps,当前时间为t=10000.100664ms,一个晶振周期(clk)为8ns,这意味着下一个时钟周期后的时间t=10000.100672ms,这时刚好执行完表二中开始时间为100us的表项。
D.在A、B、C条件下,执行剩余时间传输策略和优化抢占式控制策略的过程如下:
i.当时间t=10000.100672ms时,表一中开始时间为100us的TT业务流表项执行完毕,这时关闭0号队列的门控开关,打开BE业务流队列的门控开关,执行状态1。
ii.状态1:计算当前时间t=10000.100672ms到下一个TT业务流开始发送的剩余时间可发送报文长度Δt:
Δt=(10000.200000-10000.100672)ms=19328ns=2416bytes
考虑到传输约束参数为20字节,实际剩余时间可发送报文长度为Δt=2416-20=2396字节。由于1号队列和2号队列均有待发报文,1号队列的优先级高于2号队列,故获取1号队列队头报文的长度1518字节,它小于Δt允许发送的字节数2396,可以发送,执行状态2;
iii.状态2:发送1号队列长度为1518字节的报文,待发送完毕后执行状态1。
iv.状态1:计算剩余时间Δt=2396-1518-20=858字节,这时1号队列为空,读取2号队列队头报文的长度512字节小于Δt允许发送的字节数856,可以发送,执行状态2;
v.状态2:发送2号队列队头的报文,待发送完毕后执行状态1。
vi.状态1:计算剩余时间Δt=858-512-20=326字节,这时仅2号队列有待发报文,读取2号队列队头报文长度512字节大于Δt允许发送的字节数326字节,执行状态3计算最佳抢占位置。
vii.状态3:根据报文长度512、剩余时间326计算最佳抢占位置,由于512-(326-4)≥64,最佳抢占位置(预设位置Position)为报文发出后326-4=322字节处,执行状态4帧抢占。
viii.状态4:发送2号队列队头报文,在发送到322字节处进行帧抢占。
viiii.带帧抢占完毕时,剩余时间可发送报文长度消耗为0,这时执行调度表中下一条TT业务流的发送。
在一些实施例中,当前待发送业务流为时间敏感业务流。
如图11所示,步骤S1300,根据当前时间信息和报文属性信息,生成传输控制策略,包括:
步骤S1340,根据当前时间信息和调度表,获取预传输时间敏感业务流的报文属性信息;其中,调度表包含当前时间信息和预传输时间敏感业务流的报文属性信息的对应关系;
步骤S1350,判断当前待发送业务流的报文属性信息与预传输时间敏感业务流的报文属性信息是否匹配;
步骤S1360,若匹配,则发送当前待发送业务流;否则,发送非时间敏感业务流。
在一些实施例中,传输控制策略为预留带宽重用策略。以下实施例仅以时间敏感业务流为TT业务流;非时间敏感业务流为BE业务流为例进行说明。
在一些实施例中,TSN中的TT业务流的开始时间点是可以预测的:802.1Qbv的TAS将TT业务流的精准开始时间点组织成调度表,第i行数据流fi,1…fi,j的开始时间点是oi,发送的持续时间是wi,整个调度表的执行周期是MacroPeriod,从而,第n次发送第i行数据流fi,1…fi,j的开始时间点是oi+n*MacroPeriod。一旦TT业务流错过了它的开始时间点,该数据流将不会在本次窗口中传输,否则它就破坏了时间触发传输机制的实时性和确定性。
因此,基于上述可预测性,本申请设计的预留带宽重用策略如下:
步骤3-1:当TT业务流的开始时间点达到时,首先执行步骤S1350,检测TT业务流队列的队头报文是否是调度表中约定的数据流报文,如果是则执行步骤3-2,否则执行步骤3-3。
步骤3-2:打开TT业务流队列的传输门控,同时关闭BE业务流的传输门控,发送当前TT业务流报文;
步骤3-3:关闭TT业务流队列的传输门控,同时打开BE业务流的传输门控,发送BE业务流。
预留带宽重用策略在TT业务流缺失的情况下,让BE业务流重用了预留带宽,避免了预留带宽的浪费。算法1示意了预留带宽重用策略的算法流程。
本申请实施例构建了可重用TT业务流的预留带宽:当TT业务流缺失时,预测式混合传输控制策略中的预留带宽重用策略,可以重用TT业务流的预留带宽,避免带宽浪费。
在一些实施例中,步骤S1360,发送非时间敏感业务流,包括:
步骤S1361,根据非时间敏感业务流的优先级,优先发送高优先级的非时间敏感业务流。
在一些实施例中,报文属性信息包括业务流ID信息;或者,报文属性信息包括业务流ID信息和报文长度。
下面以示例二进一步说明本申请的预留带宽重用策略。
如图9所示,在一些实施例中,预留带宽重用策略可位于TAS的门控单元内,在实施过程中需要获得TT业务流队列的报文属性信息,例如,队列的状态信息、队头业务流的ID信息和报文长度。预留带宽重用模块配合调度表在每一个表项开始时被执行,共计4个状态。下面通过示例二说明预留带宽重用策略的执行过程。
示例二:
A.调度表中接下来执行的两个表项如表二所示:
表二:示例二的调度表
B.队列状态
a)0号队列(TT业务流队列)中存储的队头表项{ID,length,缓存池地址}为:{48,256,0x666}
b)其它队列(BE业务流队列)均有数据
C.端口速率为1Gbps,当前时间为t=10000.199992ms,一个晶振周期(clk)为8ns,这意味着下一个时钟周期后的时间t=10000.2000000ms,这时刚好到执行表一中开始时间为200us的表项。
D.在A、B、C条件下,执行预留带宽重用策略的过程如下:
i.当时间t=10000.200000ms时,执行状态1:读取表一中开始时间为200us的表项获取TT业务流信息{30,128},并判断0号队列非空,执行状态2。
ii.状态2:获取0号队列队头信息为{48,256,0x666},与TT业务流{30,128}信息不一致,说明该TT业务流没有到达,执行状态4。
iii.状态4:0号队列的门控保持关闭状态,其它BE业务流队列的门控打开,发送BE数据。
iv.发送BE数据,直到时间t=10000.500000ms,又开始执行状态1。
v.状态1:读取表一中下一条TT业务流信息{48,256},并判断0号队列非空,执行状态2。
vi.状态2:获取0号队列队头信息为{48,256,0x666},与TT业务流{48,256}信息一致,说明该TT业务流已经到达,执行状态3。
vii.状态3:打开0号队列的门控开关,关闭其它BE业务流队列的门控开关,发送TT业务流。
viii.将TT业务流从当窗口时间2208ns耗尽,关闭0号队列的门控开关,打开其它BE业务流队列的门控开关,开始发送BE数据。
viiii.发送BE数据直到调度表中下一条TT业务流的时间达到,再执行状态1。
本申请实施例通过依据当前时间信息和当前待发送业务流的报文属性信息,生成传输控制策略控制业务流传输,实现了在不破坏时间敏感业务流传输的实时性和确定性的前提下,有效提高带宽利用率。能够在不破坏时间敏感业务流传输的实时性和确定性的前提下,有效提高带宽利用率。
另外,如图12所示,本申请实施例提供了一种数据传输装置,包括:
时间获取模块110,用于获取当前时间信息;
报文属性获取模块120,用于获取当前待发送业务流的报文属性信息;
策略生成模块130,用于根据当前时间信息和报文属性信息,生成传输控制策略;
传输模块140,用于根据传输控制策略控制时间敏感网络中的业务流传输。
在一些实施例中,获取模块110用于执行上述步骤S1100;报文属性获取模块120用于执行上述步骤S1200;策略生成模块130用于执行上述步骤S1300;传输模块140用于执行上述步骤S1400。需要说明的是,本实施例中的数据传输装置,可以应用为如图4所示实施例的系统架构中的数据传输装置;另外,本实施例中的数据传输装置,可以执行如图5所示实施例中的数据传输方法。即,本实施例中的数据传输装置和如图4所示实施例的系统架构中的数据传输装置,以及如图5所示实施例中的数据传输方法,均属于相同的发明构思,因此这些实施例具有相同的实现原理以及技术效果,此处不再详述。
以上所描述的装置实施例仅仅是示意性的,其中作为分离部件说明的单元可以是或者也可以不是物理上分开的,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,本申请实施例还提供电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如前述的数据传输方法。
存储器作为一种非暂态计算机可读存储介质,可用于存储非暂态软件程序以及非暂态性计算机可执行程序。此外,存储器可以包括高速随机存取存储器,还可以包括非暂态存储器,例如至少一个磁盘存储器件、闪存器件、或其他非暂态固态存储器件。在一些实施方式中,存储器可选包括相对于处理器远程设置的存储器,这些远程存储器可以通过网络连接至该处理器。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
需要说明的是,本实施例中的电子设备,可以应用为如图4所示实施例的系统架构中的电子设备;另外,本实施例中的电子设备,可以执行如图5所示实施例中的数据传输方法。即,本实施例中的电子设备和如图4所示实施例的系统架构中的电子设备,以及如图5所示实施例中的数据传输方法,均属于相同的发明构思,因此这些实施例具有相同的实现原理以及技术效果,此处不再详述。
实现上述实施例的数据传输方法所需的非暂态软件程序以及指令存储在存储器中,当被处理器执行时,执行上述实施例中的数据传输方法,例如,执行以上描述的图5中的方法步骤S1100至S1400,图6中的方法步骤S1310至S1320,图7中的方法步骤S1330、S1320和S1310,图8中的方法步骤S1100、S1200、S1310、S1320和S1323,图10中的方法步骤S1324至S1325,图11中的方法步骤S1340至S1360。
另外,本申请实施例还提供计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于:
执行前述的数据传输方法。
在一些实施例中,该计算机可读存储介质存储有计算机可执行指令,该计算机可执行指令被一个处理器或控制器执行,例如,被上述诊断分析系统100实施例中的一个处理器执行,可使得上述处理器执行上述实施例中的数据传输方法,例如,图5中的方法步骤S1100至S1400,图6中的方法步骤S1310至S1320,图7中的方法步骤S1330、S1320和S1310,图8中的方法步骤S1100、S1200、S1310、S1320和S1323,图10中的方法步骤S1324至S1325,图11中的方法步骤S1340至S1360。
本领域普通技术人员可以理解,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
以上是对本申请实施例的较佳实施进行了具体说明,但本申请实施例并不局限于上述实施方式,熟悉本领域的技术人员在不违背本申请实施例精神的前提下还可作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请实施例权利要求所限定的范围内。
Claims (15)
1.一种数据传输方法,包括:
获取当前时间信息;
获取当前待发送业务流的报文属性信息;
根据所述当前时间信息和所述报文属性信息,生成传输控制策略;
根据所述传输控制策略控制时间敏感网络中的业务流传输。
2.根据权利要求1所述的方法,其特征在于,所述当前待发送业务流为非时间敏感业务流,所述报文属性信息包括报文长度;
所述根据所述当前时间信息和所述报文属性信息,生成传输控制策略,包括:
根据所述当前时间信息和下一个时间敏感业务流的开始时间,计算得到剩余时间可发送报文长度;
根据所述剩余时间可发送报文长度和所述报文长度,生成传输控制策略。
3.根据权利要求2所述的方法,其特征在于,所述根据所述剩余时间可发送报文长度和所述报文长度,生成传输控制策略,包括:
根据所述剩余时间可发送报文长度和所述报文长度,判断所述剩余时间可发送报文长度是否足以发送当前待发送业务流;
若是,则发送当前待发送业务流;
重复执行下列步骤,直至所述剩余时间可发送报文长度不足以发送当前待发送业务流:
再次获取当前时间信息;
再次获取当前待发送业务流的报文属性信息;
根据所述当前时间信息和下一个时间敏感业务流的开始时间,计算得到所述剩余时间可发送报文长度;
根据所述剩余时间可发送报文长度和所述报文长度,判断所述剩余时间可发送报文长度是否足以发送当前待发送业务流;
若是,则发送当前待发送业务流。
4.根据权利要求2或3所述的方法,其特征在于,根据所述当前时间信息和下一个时间敏感业务流的开始时间,计算得到所述剩余时间可发送报文长度,包括:
根据所述当前时间信息、下一个时间敏感业务流的开始时间、传输约束参数和第一计算公式,计算得到所述剩余时间可发送报文长度;其中,所述第一计算公式包括:
剩余时间可发送报文长度=下一个时间敏感业务流的开始时间与当前时间信息的差值对应的可发送报文长度-传输约束参数。
5.根据权利要求4所述的方法,其特征在于,所述传输约束参数包括最小帧间间隔、帧起始符长度、前导码长度和帧序号;对应的,所述第一计算公式包括:
剩余时间可发送报文长度=下一个时间敏感业务流的开始时间与当前时间信息的差值对应的可发送报文长度-最小帧间间隔-帧起始符长度-前导码长度-帧序号。
6.根据权利要求2所述的方法,其特征在于,所述根据所述当前时间信息和下一个时间敏感业务流的开始时间,计算得到剩余时间可发送报文长度之前,还包括:
查询调度表,获取下一个时间敏感业务流的开始时间。
7.根据权利要求2、3、5或6所述的方法,其特征在于,所述根据所述剩余时间可发送报文长度和所述报文长度,生成传输控制策略,包括:
根据所述剩余时间可发送报文长度和所述报文长度,判断所述剩余时间可发送报文长度是否足以发送当前待发送业务流;
若所述剩余时间可发送报文长度不足以发送当前待发送业务流,则根据所述剩余时间可发送报文长度、所述报文长度、抢占约束条件参数,生成抢占式控制策略。
8.根据权利要求7所述的方法,其特征在于,
所述抢占约束条件参数包括传输最小帧长度和可被截断报文最小帧长度;
所述抢占式控制策略包括:
若所述报文长度不满足所述可被截断报文最小帧长度,则耗尽所述剩余时间可发送报文长度;
若所述剩余时间可发送报文长度不满足所述传输最小帧长度,则耗尽所述剩余时间可发送报文长度;
若所述报文长度满足可被截断报文最小帧长度,且所述剩余时间可发送报文长度满足传输最小帧长度,则发送所述当前待发送业务流,并在所述剩余时间可发送报文长度中的预设位置发起抢占指令,以停止发送所述当前待发送业务流。
9.根据权利要求8所述的方法,其特征在于,
所述抢占约束条件参数还包括抢占CRC检验字段长度;
若所述报文长度与所述抢占CRC检验字段长度之和,大于或等于所述剩余时间可发送报文长度与所述传输最小帧长度之和,所述预设位置为所述剩余时间可发送报文长度与所述抢占CRC检验字段长度之差;对应的,所述在所述剩余时间可发送报文长度中的预设位置发起抢占指令,包括:在发送所述剩余时间可发送报文长度减去抢占CRC检验字段长度的报文后发起抢占指令;
若所述报文长度与所述抢占CRC检验字段长度之和,小于所述剩余时间可发送报文长度与所述传输最小帧长度之和,所述预设位置为所述报文长度与所述传输最小帧长度之差;对应的,所述在所述剩余时间可发送报文长度中的预设位置发起抢占指令,包括:在发送所述报文长度减去所述传输最小帧长度的报文后发起抢占指令。
10.根据权利要求1所述的方法,其特征在于,所述当前待发送业务流为时间敏感业务流;
所述根据所述当前时间信息和所述报文属性信息,生成传输控制策略,包括:
根据所述当前时间信息和调度表,获取预传输时间敏感业务流的报文属性信息;其中,所述调度表包含所述当前时间信息和预传输时间敏感业务流的报文属性信息的对应关系;
判断当前待发送业务流的报文属性信息与预传输时间敏感业务流的报文属性信息是否匹配;
若匹配,则发送当前待发送业务流;否则,发送非时间敏感业务流。
11.根据权利要求10所述的方法,其特征在于,所述发送非时间敏感业务流,包括:
根据所述非时间敏感业务流的优先级,优先发送高优先级的所述非时间敏感业务流。
12.根据权利要求10或11所述的方法,其特征在于,所述报文属性信息包括业务流ID信息;或者,所述报文属性信息包括业务流ID信息和报文长度。
13.一种数据传输装置,包括:
时间获取模块,用于获取当前时间信息;
报文属性获取模块,用于获取当前待发送业务流的报文属性信息;
策略生成模块,用于根据所述当前时间信息和所述报文属性信息,生成传输控制策略;
传输模块,用于根据所述传输控制策略控制时间敏感网络中的业务流传输。
14.电子设备,包括:存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至12任意一项所述的数据传输方法。
15.计算机可读存储介质,存储有计算机可执行指令,所述计算机可执行指令用于:
执行权利要求1至12任意一项所述的数据传输方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110276013.1A CN115086177A (zh) | 2021-03-15 | 2021-03-15 | 数据传输方法、装置、电子设备及存储介质 |
PCT/CN2022/074958 WO2022193860A1 (zh) | 2021-03-15 | 2022-01-29 | 数据传输方法、装置、电子设备及存储介质 |
JP2023541028A JP2024502118A (ja) | 2021-03-15 | 2022-01-29 | データ伝送方法、装置、電子機器、及び記憶媒体 |
EP22770219.8A EP4311188A1 (en) | 2021-03-15 | 2022-01-29 | Data transmission method and apparatus, electronic device, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110276013.1A CN115086177A (zh) | 2021-03-15 | 2021-03-15 | 数据传输方法、装置、电子设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115086177A true CN115086177A (zh) | 2022-09-20 |
Family
ID=83241463
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110276013.1A Pending CN115086177A (zh) | 2021-03-15 | 2021-03-15 | 数据传输方法、装置、电子设备及存储介质 |
Country Status (4)
Country | Link |
---|---|
EP (1) | EP4311188A1 (zh) |
JP (1) | JP2024502118A (zh) |
CN (1) | CN115086177A (zh) |
WO (1) | WO2022193860A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115622941A (zh) * | 2022-09-30 | 2023-01-17 | 中国人民解放军陆军装甲兵学院 | 一种动态流量调度方法、装置及存储介质 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116032855B (zh) * | 2023-01-17 | 2024-05-28 | 重庆邮电大学 | 解决时间敏感网络中紧急事件流的时间感知整形器增强方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20050058149A1 (en) * | 1998-08-19 | 2005-03-17 | Howe Wayne Richard | Time-scheduled and time-reservation packet switching |
CN101447934B (zh) * | 2008-11-06 | 2011-07-27 | 中国移动(深圳)有限公司 | 一种业务流识别方法和系统以及业务流计费方法和系统 |
CN108737003B (zh) * | 2017-04-25 | 2021-10-26 | 是德科技新加坡(销售)私人有限公司 | 用于测试时间敏感网络(tsn)元件的方法、系统和计算机可读介质 |
CN111200846B (zh) * | 2018-11-19 | 2022-08-09 | 华为技术有限公司 | 时延敏感网络通信方法及其装置 |
-
2021
- 2021-03-15 CN CN202110276013.1A patent/CN115086177A/zh active Pending
-
2022
- 2022-01-29 EP EP22770219.8A patent/EP4311188A1/en active Pending
- 2022-01-29 WO PCT/CN2022/074958 patent/WO2022193860A1/zh active Application Filing
- 2022-01-29 JP JP2023541028A patent/JP2024502118A/ja active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115622941A (zh) * | 2022-09-30 | 2023-01-17 | 中国人民解放军陆军装甲兵学院 | 一种动态流量调度方法、装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
EP4311188A1 (en) | 2024-01-24 |
WO2022193860A1 (zh) | 2022-09-22 |
JP2024502118A (ja) | 2024-01-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10812397B2 (en) | Method for managing traffic in a network based upon ethernet switches, vehicle, communication interface, and corresponding computer program product | |
EP3057273B1 (en) | Method for a traffic shaping in a network | |
RU2419226C2 (ru) | Управление памятью для высокоскоростного управления доступом к среде | |
EP2050199B1 (en) | Expedited communication traffic handling apparatus and methods | |
CN113068263B (zh) | 一种时间敏感网络时隙调度方法、终端及存储介质 | |
US8165132B2 (en) | Scheduling apparatus, mobile station therewith, and method therefor | |
WO2018076641A1 (zh) | 一种减少时延的方法、装置及存储介质 | |
WO2022222242A1 (zh) | 一种时间敏感网络报文转发方法、装置、终端及存储介质 | |
CN115086177A (zh) | 数据传输方法、装置、电子设备及存储介质 | |
EP2556714B1 (en) | Method and node for handling queues in communication networks, and corresponding computer program product | |
US7701979B2 (en) | Residential ethernet node apparatus for maintaining starting point of superframe and method for processing same | |
Zou et al. | reTSN: Resilient and efficient time-sensitive network for automotive in-vehicle communication | |
CN107040440B (zh) | 在基于以太网的运载工具中网络中启动触发的方法和设备 | |
CN115086239B (zh) | 一种共享式tsn整形调度装置 | |
CN114338545A (zh) | 流量整形方法及装置 | |
Liebeherr et al. | A versatile packet multiplexer for quality-of-service networks | |
US11470629B1 (en) | Delay-responsive uplink scheduling | |
WO2022264194A1 (ja) | 信号転送装置、信号転送方法、信号転送システム及びプログラム | |
WO2023012948A1 (ja) | 通信装置、通信システム、及び通信方法 | |
US20240171518A1 (en) | Method implemented in packet-switched network for scheduling transmission of ethernet frame | |
EP2942916A1 (en) | Contention avoidance in packet switched network equipments | |
CN115622941A (zh) | 一种动态流量调度方法、装置及存储介质 | |
CN117596201A (zh) | 一种基于循环排队转发机制的联合路由调度方法及装置 | |
KR20240056380A (ko) | 서비스 순서 보존형 전역 완료시간 기반 네트워크 지연시간 보장 시스템 및 방법 | |
Li et al. | Enhanced Switch Design Supporting Dual Preemption Under Real-Time Ethernet |
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 |