CN115883483A - 一种时间敏感业务缓存队列的调度系统和方法 - Google Patents
一种时间敏感业务缓存队列的调度系统和方法 Download PDFInfo
- Publication number
- CN115883483A CN115883483A CN202211581874.1A CN202211581874A CN115883483A CN 115883483 A CN115883483 A CN 115883483A CN 202211581874 A CN202211581874 A CN 202211581874A CN 115883483 A CN115883483 A CN 115883483A
- Authority
- CN
- China
- Prior art keywords
- queue
- flow
- time slot
- primary
- message
- 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
Images
Landscapes
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明涉及通信技术领域,特别是涉及一种时间敏感业务缓存队列的调度系统和方法。主要包括:一级缓存队列包含至少2个一级TT流队列,每个一级TT流队列与一个传输时隙绑定;一级调度器包含一个确定性时延调度器,确定性时延调度器中包含静态门控列表,静态门控列表根据时隙协商机制对一级TT流队列进行调度;二级缓存队列包含一个二级TT流队列,二级TT流队列缓存从一级TT流队列和一级非TT流队列接收到的报文;MAC为具有帧抢占功能的MAC,基于MAC的帧抢占机制优先发送二级TT流队列中的报文。本发明可以,解决门控协商机制过于复杂和部署成本高的问题。
Description
技术领域
本发明涉及通信技术领域,特别是涉及一种时间敏感业务缓存队列的调度系统和方法。
背景技术
随着通信技术的广泛应用,如工业自动化控制、自动驾驶等时间敏感业务的需求越来越多。自2012年IEEE TSN工作组成立以来,发布了一系列协议簇,从时间同步、资源管理、时延控制、安全管理等方面扩充了以太网规范,以满足时间敏感业务对传输时延和抖动的要求。其中802.1qbv定义的门控机制通过将以太网口的缓存队列分为时间触发(TimeTriggered,简写为TT)流队列和非TT流队列,并在以太网口配置门控列表,以控制队列周期性开启和关闭TT流队列的发送功能,实现设备内TT流队列的确定性调度。当一条TT流业务经过网络传输时,需要在传输路径上的每个设备通过TT流队列缓存,并设置合适的门控列表,精确控制每个TT流队列的门开启时间,以实现业务在各设备上低时延、低抖动传输。另外,在传统的以太网中,如果一个低优先级报文(例如,非TT流队列)正在传输,高优先级报文(例如,TT流队列)到达时需要等待低优先级报文完成传输后才能开始传输,在低速接口上,这会导致较大的抖动。802.1qbu规定的帧抢占机制可以让TT流队列抢占非TT流队列正在使用的通道,降低TT流队列的传输抖动。
但是,现有方案还存在一些问题:一方面,传统方案要求TT流队列的门开启时,TT业务独占接口带宽资源,而且为了解决门关闭前的突发流量问题,通常会为每个门预留一定的带宽资源,这导致带宽资源的浪费。另一方面,传统方案为每个流计算传输路径各节点的门控列表,当一个设备存在很多不同需求的TT流时,需要将所有流的需求综合计算形成满足所有业务需求的门控列表,导致该门控列表不易得出合适的解,并且门控列表也过于复杂,这项工作通常需要集中式服务器计算,部署成本较高。
鉴于此,如何克服现有技术所存在的缺陷,解决现有TT流队列资源独占导致的门控资源浪费和控制复杂的现象,是本技术领域待解决的问题。
发明内容
针对现有技术的以上缺陷或改进需求,本发明解决了现有调度方案中TT业务资源独占的问题。
本发明实施例采用如下技术方案:
第一方面,本发明提供了一种时间敏感业务缓存队列的调度系统,具体为:包括一级缓存队列、一级调度器、二级缓存队列和MAC,具体的:所述一级缓存队列包含至少2个一级TT流队列和至少一个一级非TT流队列,每个一级TT流队列与一个传输时隙绑定;所述一级调度器包含一个确定性时延调度器和至少一个差分业务调度器,确定性时延调度器中包含静态门控列表,静态门控列表根据时隙协商机制对一级TT流队列进行调度,差分业务调度器根据二级非TT流队列的流控信息控制一级非TT流队列的传输速率;所述二级缓存队列包含一个二级TT流队列和一个二级非TT流队列,二级TT流队列和二级非TT流队列分别缓存从一级TT流队列和一级非TT流队列接收到的报文,在二级TT流队列非空时,二级TT流队列向MAC发起报文传输请求;所述MAC为具有帧抢占功能的MAC,基于MAC的帧抢占机制优先发送二级TT流队列中的报文。
优选的,所述每个一级TT流队列与一个传输时隙绑定,具体包括:根据时隙协商报文所传递的时隙信息测量出相邻设备间的传输时延,根据传输时延和上游节点的传输时隙计算报文在本设备中的传输时隙,每个业务对应一个传输时隙;静态门控列表根据每个业务的传输时隙将一个周期划分为若干个时隙,各时隙之间无时间间隔,每个时隙对应一个一级TT流队列;将每个时隙对应的业务与该时隙所控制的一级TT流队列绑定,该一级TT流队列用于缓存相应业务的报文。
优选的,所述根据时隙协商报文所传递的时隙信息测量出相邻设备间的传输时延,具体包括:所述时隙协商报文在发送方向传输路径的首节点通过控制平面注入包处理芯片、在接收方向的中间节点和尾节点通过包处理芯片提取至控制平面,并在经过处理后再次注入包处理芯片,时隙协商报文包含转发实际业务所需的转发信息,以及注入报文时的时间戳和本站发送报文时隙信息,协商报文长度为业务设定的最大报文长度。
优选的,所述差分业务调度器根据二级非TT流队列的流控信息控制一级非TT流队列的传输速率,还包括:
二级非TT流队列基于队列长度向差分业务调度器发送流控信息,当差分业务调度器接收到二级非TT流队列发送的流控信息后,停止调度一级非TT流队列内的报文;
当二级非TT流队列长度降低至队列配置门限以下时,二级非TT流队列停止向差分业务调度器发送流控信息,差分业务调度器恢复调度一级非TT流队列内的报文。
优选的,所述基于MAC的帧抢占机制优先发送二级TT流队列中的报文,具体包括:当MAC正在传输二级非TT流队列中的报文时,若二级TT流队列请求发送报文,MAC在传输64的字节整数倍包长的报文后让出通道,转而调度二级TT流队列中的报文。
另一方面,本发明提供了一种时间敏感业务缓存队列的调度方法,具体为:使用第一方面提供的时间敏感业务缓存队列的调度系统进行缓存队列的调度,具体包括:根据时隙协商机制确定每个一级TT流队列使用的时隙,根据静态门控列表对一级TT流队列进行调度,一级TT流队列根据调度以接口最大速率向二级TT流队列发送报文;根据差分服务模型对一级非TT流队列进行调度,并在二级非TT流队列拥塞时中止调度;当二级TT流队列非空时,二级TT流队列向MAC发起报文传输请求,当二级TT流队列为空时,二级非TT流队列向MAC发起报文传输请求,获得传输许可后各队列以接口最大速率通过mac传输报文。
优选的,对于传输路径的首节点,所述每个一级TT流队列与一个传输时隙绑定,具体包括:控制平面为每个确定性时延业务构造时隙协商报文,控制平面查询业务配置,确定时隙协商报文的出接口;以流量均衡为原则,在业务报文出接口包含的所有一级TT流队列中选择剩余带宽满足需求的一级TT流队列作为承载本业务的一级TT流队;控制平面将选择的一级TT流队列与本业务绑定,下发配置控制业务进入该一级TT流队列。
优选的,对于传输路径的首节点,所述根据时隙协商机制确定每个一级TT流队列使用的时隙,具体包括:控制平面将业务需求、本节点分配的传输时隙和门控列表配置信息填入时隙协商报文中;控制平面将时隙协商报文注入包处理芯片的TT流队列,同时更新注入时隙协商报文的时间戳;被选中的一级TT流队列的传输时隙到达时,业务报文被调度转发至下游节点的二级TT流队列中。
优选的,对于传输路径的中间节点和尾节点,所述根据时隙协商机制确定每个一级TT流队列使用的时隙,具体包括:包处理芯片接收时隙协商报文,更新时隙协商报文接收时间戳,识别时隙协商报文类型后,提取时隙协商报文到控制单元;根据时隙协商报文的包头信息完成路由计算,获取时隙协商报文出接口;计算传输时延,根据时隙协商报文携带信息和端口的门控列表配置计算满足需求的时隙,下发相关配置将业务与时隙对应的一级TT流队列绑定。
优选的,对于传输路径的中间节点和尾节点,所述根据时隙协商机制确定每个一级TT流队列使用的时隙,具体包括:将业务报文注入业务所绑定的一级TT流队列等待调度,更新报文注入时间、分配的时隙和本设备的时隙表参数;绑定的一级TT流队列传输时隙时间达到时,业务报文被调度转发至下游节点。
与现有技术相比,本发明实施例的有益效果在于:将业务的TT流队列和非TT流队列独立调度,并在出口队列通过对非TT流的流控机制解决确定性业务对带宽资源浪费的问题;通过为每个端口配置静态门控列表将TT流队列与每个业务的传输时隙绑定,在传输设备上基于路径探测和时延测量、确定不同设备转发业务所需的队列和传输时隙,解决门控协商机制过于复杂和部署成本高的问题。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单地介绍。显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种时间敏感业务缓存队列的调度系统架构示意图;
图2为一级TT流队列的调度流程示意图;
图3为时隙协商报文格式示意图;
图4为本发明实施例提供的一种时间敏感业务缓存队列的方法流程图;
图5为本发明实施例提供的另一种时间敏感业务缓存队列的方法流程图;
图6为本发明实施例提供的另一种时间敏感业务缓存队列的方法流程图。
具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
本发明是一种特定功能系统的体系结构,因此在具体实施例中主要说明各结构模组的功能逻辑关系,并不对具体软件和硬件实施方式做限定。
此外,下面所描述的本发明各个实施方式中所涉及到的技术特征只要彼此之间未构成冲突就可以相互组合。下面就参考附图和实施例结合来详细说明本发明。
实施例1:
本实施例提供的调度系统涉及确定性网络领域,具体来讲是一种确定性网络中基于门控技术的调度系统模型,以及基于此模型实现确定性调度所需的门控协商机制。
如图1所示,为本发明实施例提供的时间敏感业务缓存队列的调度系统模型的基本架构,系统中包括一级缓存队列、一级调度器、二级缓存队列和媒体介入控制层(MediaAccess Control,简写为MAC)。
一级缓存队列包含至少2个一级TT流队列和至少一个一级非TT流队列,每个一级TT流队列与一个传输时隙绑定。本实施例中,将业务报文中的TT流报文和非TT流报文分别独立调度,一级缓存队列用于进行调度前的分类缓存,其中包含一级TT流队列和一级非TT流队列。一级TT流队列用于承载确定性时延业务(TT业务),网络传输路径的每个端口包含若干个一级TT流队列,一级TT流队列不占用传统差分服务的队列,而是使用静态门控阵列进行调度。一级非TT流队列用于承载确定性时延业务以外的业务,每个端口包含至少一个一级非TT流队列,在实际实施中,传统的以太网差分服务模型一般采用8个队列,由于本发明的方法中一级TT流队列不占用传统差分服务的队列,因此可以将全部8个差分服务队列都作为一级非TT流队列。
一级调度器包含一个确定性时延调度器和至少一个差分业务调度器,确定性时延调度器中包含静态门控列表,静态门控列表根据时隙协商机制对一级TT流队列进行调度,差分业务调度器根据二级非TT流队列的流控信息控制一级非TT流队列的传输速率。本实施例的方法中,静态门控列表根据每个一级TT流队列绑定的传输时隙周期性依次开启每个一级TT流队列的门控开关,以实现一级TT流队列的调度,具体的时隙协商机制实现方法见后文所述。另一方面,使用差分业务调度器实现一级非TT队列的调度,差分业务调度器可实现差分服务模型所需的严格优先级(Strict Priorit,简写为SP)、加权公平队列(WeightedFair Queue,简写为WFQ)、分层调度等调度算法的使用需求,满足一级非TT流队列的不同调度需要。一级调度器内的2种调度器独立工作,每种调度器最大可用带宽为接口最大带宽。进一步的,为了避免二级缓存队列出现拥塞,差分业务调度器接收二级缓存队列的流控信息,以控制一级非TT流队列的传输速率。
二级缓存队列包含一个二级TT流队列和一个二级非TT流队列,二级TT流队列和二级非TT流队列分别缓存从一级TT流队列和一级非TT流队列接收到的报文。在二级TT流队列非空时,二级TT流队列向MAC发起报文传输请求;在二级TT流队列为空时,二级非TT流队列向MAC发起报文传输请求。与一级缓存队列相对应,二级缓存队列中包含一个二级TT流队列和一个二级非TT流队列,二级TT流队列用于缓存所有从一级TT流队列接收的报文,二级非TT流队列用于缓冲从所有一级非TT流队列接收的报文。二级TT流队列非空时即可向MAC发起报文传输请求,以确保TT报文发送的实时性,二级非TT流队列在二级TT流队列为空时可向MAC发起报文传输请求,以避免抢占TT报文的发送资源。二级非TT流队列可基于队列长度向一级调度器中的差分业务调度器传输流控信息,当队伍长度过长时,暂停一级非TT流报文的传输,避免缓存占满导致的丢包。
MAC为具有帧抢占功能的MAC,基于MAC的帧抢占机制优先发送二级TT流队列中的报文。具有帧抢占机制的MAC,可以在非TT报文发送中途暂停,优先发送TT报文,进一步提高了TT报文发送的实时性。具体的,MAC可以使用802.1qbu规定的具有帧抢占功能的MAC。
本实施例中,基于上述系统的时隙协商机制对一级TT流队列进行调度,通过时隙协商报文在邻接设备间传递传输时隙信息,并测量相邻设备间的传输时延。基于所传递的时隙信息和测量的传输时延计算每个TT流业务在本设备的传输时隙,并将业务与所确定的时隙的相关TT流队列绑定,实现传输路径上各设备TT流与最优传输时隙的绑定。
如图2所示,一级TT流队列的调度流程为:根据时隙协商报文所传递的时隙信息测量出相邻设备间的传输时延,根据传输时延和上游节点的传输时隙计算业务在本设备中的传输时隙,每个业务对应一个传输时隙。静态门控列表根据每个业务的传输时隙将一个周期划分为若干个时隙,各时隙之间无时间间隔,每个时隙对应一个一级TT流队列;将每个时隙对应的业务与该时隙所控制的一级TT流队列绑定,该一级TT流队列用于缓存相应业务的报文。
其中,时隙协商报文在发送方向的首节点通过控制平面注入包处理芯片、在接收方向的中间节点和尾节点通过包处理芯片提取至控制平面,并在经过处理后再次注入包处理芯片,时隙协商报文包含转发实际业务所需的转发信息,以及注入报文时的时间戳和本站发送报文时隙信息,协商报文长度为业务设定的最大报文长度。
时隙协商报文的具体格式如图3所示,关键字段含义如下:
REQ_BANDWIDTH:请求带宽,源节点填写。
REQ_MAX_DELAY:请求的单节点最大转发时延。
MAX_PKT_SIZE:业务报文的最大长度。
RX_TIME:本节点的接收时间戳,单位us。
INJECT_TIME:控制平面将时隙协商报文注入包处理芯片时的时间戳,单位us。
TSID:接收时隙协商报文时携带上一个节点使用的发送时隙ID,发送时隙协商报文时更新本节点分配的发送起始时隙。
TS_LEN:接收时隙协商报文时携带上一个节点的时隙的时长,发送时隙协商报文时更新为本节点的时隙时长。
TS_NUM:接收时隙协商报文时携带上一个节点的每周期时隙数量,发送时隙协商报文时更新为本节点的时隙数量配置。
测量相邻设备间的传输时延的方法为:相邻设备中的下游设备通过收到时隙协商报文内携带的注入时间信息、发送时隙信息以及本设备收报文时的时间戳信息,计算从上游设备传输门开启时间到下游设备完成报文接收所需的时间,以该时间作为相邻设备间的传输时延。其计算原理如下:
上一个节点每个时隙的时长t1=TS_LEN。
上一个节点门控周期的时长T1=TS_LEN*TS_NUM。
上一个站点报文的实际发送时间TX_TIME。
if(INJECT_TIME MOD T1>t1*TX_TSID)//若注入时间信息INJECT_TIME超过本周期的报文发送时隙时间,等待下一个周期的该一级TT队列对应的时隙发送报文。
TX_TIME=((INJECT_TIME/T1)+1)*T1+TX_TSID*t1//计算报文发送时间,由于等待下一个周期发送,因此时隙数需要增加一个周期。
else
TX_TIME=(INJECT_TIME/T1)*T1+TX_TSID*t1//计算报文发送时间,本周期正常发送,时隙数不需要增加。
时延T_DELAY=RX_TIME-TX_TIME,即到达时间与发送时间之差。
计算本设备的传输时隙的方法为:通过时隙协商报文携带的传输时隙信息和所测量的传输时延,计算报文在本设备中传输的时间作为本身中的传输时隙。本实施例中,为了提高传输效率,在本设备中选择等待时间最少且带宽满足需求的时隙与相应业务的一级TT流队列进行绑定。其计算原理如下:
本节点每个时隙的时长t2=LS_LEN’即接收节点的LS_LEN。
本节点第一个可用的时隙id=((TSID*t1+T_DELAY)/t2)mod TS_NUM’即接收节点的LS_NUM’。
从第一个可用的时隙id开始,找到满足时延和带宽要求的时隙即可。
根据上述具体计算结果,能够使用时隙协商报文获取到每个业务的传输时隙,并将每个一级TT流队列与每个时隙进行绑定,以便于使用静态门控阵列根据时隙协商机制对一级TT流队列进行调度。同时,通过节点间传递时隙信息和测量传输时延,还可以计算本节点的最优传输时隙。
二级缓存队列包含一个二级TT流队列和一个二级非TT流队列,分别用于缓存从一级TT流队列和非TT流队列的接收的报文。通过一级调度器的调度,所有一级TT流队列中的报文被调度至二级TT流队列,所有一级非TT流队列中的报文被调度至二级非TT流队列。
为了确保TT报文发送的实时性,二级TT流队列中的调度不进行等待,二级TT流队列非空时即可向MAC发起报文传输请求。同时,二级非TT流队列需要让出MAC的传输资源,因此仅在二级TT流队列为空时可向MAC发起报文传输请求。二级TT流队列和二级非TT流队列获得传输许可后,均已接口最大速率通过MAC传输报文。
进一步的,由于二级非TT流队列中的报文需要等待,为了避免二级非TT流队列出现拥塞,还需要通过二级TT流队列的流控信息调整一级TT流队列的调度。二级非TT流队列基于队列长度向差分业务调度器发送流控信息,当差分业务调度器接收到二级非TT流队列发送的流控信息后,停止调度一级非TT流队列内的报文。当二级非TT流队列长度降低至队列配置门限以下时,二级非TT流队列停止向差分业务调度器发送流控信息,差分业务调度器恢复调度一级非TT流队列内的报文。
通过上述方式,即可完成二级缓存队列的调度,实现TT报文的优先发送。
为了进一步提升TT报文发送的实时性,本实施例提供的系统中采用了具有帧抢占机制的MAC。当二级TT流队列有报文需要传输时优先传输,但此时MAC正在传输二级非TT流队列内的报文时,基于MAC的帧抢占机制,二级TT流队列可抢占MAC的物理通道优先传输报文。当MAC正在传输二级非TT流队列中的报文时,若二级TT流队列请求发送报文,MAC在传输64的字节整数倍包长的报文后让出通道,转而调度二级TT流队列中的报文。
本实施例提供的时间敏感业务缓存队列的调度系统,通过将TT报文和非TT报文缓存进不同的队列进行调度,使TT流队列以高优先级按需使用接口带宽,非TT流的差分业务通过二级缓存队列的流控机制最大化利用剩余带宽,无需资源预留,接口带宽利用率高,业务带宽划分灵活。并利用时隙协商机制实现基于静态的门控列表和时延测量机制,实现TT流在传输路径上每个设备的最优传输时隙的协商,实现简单,无需部署集中式控制器。
实施例2:
基于实施例1提供的时间敏感业务缓存队列的调度系统,本实施例还提供了一种时间敏感业务缓存队列的调度方法。
如图4所示,可以使用以下步骤完成调度。
步骤101:根据时隙协商机制确定每个一级TT流队列使用的时隙,根据静态门控列表对一级TT流队列进行调度,一级TT流队列根据调度以接口最大速率向二级TT流队列发送报文。
一级TT流队列用于承载确定性时延业务,网络传输路径的每个端口包含不少于2个一级TT流队列,每个一级TT流队列对应一个业务所对应的传输时隙绑定。TT流队列数量与业务的数量可能是1对多的关系,多个业务可以复用相同的TT流队列,不同业务对应TT流队列中的不同时隙。本实施例中,通过节点间传递时隙信息和测量传输时延计算每个业务的最优传输时隙,并将业务和时隙进行绑定。在本实施例提供的方法中,采用时隙协商机制确定每个业务的最优时隙,并配置业务进入时隙绑定的队列。具体的时隙协商机制在后文中详述。
一级TT流队列由一级调度器中的确定性时延调度器进行调度,确定性时延调度器内含静态门控列表,通过静态门控列表按时间周期轮询,依次开启和关闭每个TT流队列的门控开关。静态门控列表将一个周期划分为若干个时隙,其时隙数量与端口的一级TT流队列数量相同,时隙间无时间间隔,每个时隙与一个一级TT流队列绑定,时隙时间达到时一级TT流队列开启传输门、时隙时间结束时队列关闭传输门。
所有一级TT流队列属于同一优先级,传输路径首节点控制平面以流量均衡为原则为每个流选择TT流队列转发,中间节点和尾节点根据传输时延和各队列剩余带宽为每条流选择最优队列。每个一级TT流队列在传输门开启时以接口最大速率向二级TT流队列发送报文,每个队列所能承载业务的理论速率为:端口最大速率/一级TT流队列数量。
进一步的,为了确保TT报文传输的实时性,当一级TT流队列中还有报文且队列的传输门状态为开启时即可发送报文,不管剩余时间是否足够发送本报文。这将导致下一个一级TT流队列内的报文的开始发送时间延迟,其理论延迟时间不大于“报文长度/端口最大速率”。业务规划时可通过为每个队列预留部分带宽,防止此类情况对后续所有队列的传输门开启时间产生影响,将影响范围控制在下一个邻接时隙。
进一步的,确定性时延调度器也可以基于信用对一级TT流队列内的报文进行调度。每个时隙内,确定性时延调度器产生规定数量的信用,具体实施中,信用可以以令牌的形式生成和下发,当一级TT流队列需要传输报文时,首先判断剩余信用是否足够发送报文,若是则发送报文,否则等待信用足够再发送报文,以避免一个队列在本时隙内超发报文而影响下一个时隙的报文发送。
步骤102:根据差分服务模型对一级非TT流队列进行调度,并在二级非TT流队列拥塞时中止调度。
一级非TT流队列用于承载除确定性时延业务以外的其它业务。为了提高现有以太网差分服务模型中差分服务队列的利用率,实际实施中,每个网络端口包含一级8个非TT流队列,根据差分服务模型以一级调度器规定的速率向二级非TT流队列发送报文。
一级非TT流队列由一级调度器中的差分业务调度器进行调度,差分业务调度器可实现差分服务模型所需的SP、WFQ、RR、分层调度等需求。进一步的,可以将多个差分调度器组合使用,实现分层调度等的应用。
在本实施例中,一级调度器使用两种不同的调度器独立调度一级TT流队列和一级非TT流队列,确定性业务调度器和差分服务调度器可同时按各自设计的调度速率从一级队列调度报文传送至二级队列。因此,当一级缓存队列超发流量时,可能导致二级缓存队列拥塞。为了确保一级TT流队列中的报文及时发送,二级非TT流队列根据拥塞情况产出流控信息,控制差分服务调度器停止调度一级非TT流业务。差分业务调度器接收二级队列的流控信息,控制非TT流队列的传输速率。具体的:当二级非TT流队列向差分服务调度器发送流控信息后,差分服务调度器停止调度一级非TT流队列内的报文;当二级非TT流队列长度降低至队列配置门限以下时,二级非TT流队列停止向差分服务调度器发送流控信息,此时差分服务调度器恢复调度一级非TT流队列内的报文
具体实施中,差分业务调度器可按需配置非TT流报文传输时的最大可用带宽。
步骤103:二级TT流队列非空时,二级TT流队列和二级非TT流队列向MAC发起报文传输请求,获得传输许可后各队列以接口最大速率通过mac传输报文。
二级缓存队列包含一个二级TT流队列和一个二级非TT流队列,分别用于缓存从一级TT流队列和非TT流队列的接收的报文。
二级TT流队列非空时即可向MAC发起报文传输请求,二级非TT流队列在二级TT流队列为空时可向MAC发起报文传输请求,两个队列获得传输许可后均已接口最大速率通过MAC传输报文。
当二级TT流队列有报文需要传输时,将该报文优先传输。若此时MAC正在传输二级差分队列内的报文,基于MAC的帧抢占机制,二级TT流队列可抢占物理通道优先传输报文。
本实施例中使用的MAC为802.1qbu规定的具有帧抢占功能的MAC。当MAC正在传输非TT流业务时,如果TT流队列请求发送报文,MAC在传输64的字节整数倍包长的报文后让出通道,转而调度TT流业务。
通过步骤101-步骤103,可以使用实施例1中的系统实现TT流和非TT流的独立调度,并确保了TT报文传输的实时性。在具体实施中,一级调度器内的2种调度器独立调度TT流和非TT流,每种调度器最大可用带宽为接口最大带宽,且MAC独立于一级调度器进行转发,因此,步骤101和步骤103的执行顺序不需要固定,且可以同步执行。
步骤101中使用了基于实施例1中提供的调度系统的时隙协商机制对一级TT流队列进行调度,通过时隙协商报文在传输路径的邻接设备间传递传输时隙信息。基于所传递的时隙信息测量的传输时延并计算每个业务在设备的传输时隙,将每个业务与其对应的时隙所控制的一级TT流队列绑定,最终实现传输路径上各设备TT流与最优传输时隙的绑定。
如图5所示,对于传输路径的首节点,可以通过以下步骤中描述的时隙协商机制,完成一级TT流队列的最优时隙选择,以及相应的时隙绑定和调度。
步骤201:控制平面为每个确定性时延业务构造时隙协商报文,控制平面查询业务配置,确定时隙协商报文的出接口。
步骤202:以流量均衡为原则,在业务报文出接口包含的所有一级TT流队列中选择剩余带宽满足需求的一级TT流队列作为承载本业务的一级TT流队。
步骤203:控制平面将选择的一级TT流队列与本业务绑定,下发配置控制业务进入该一级TT流队列。
为了对已用带宽值进行控制,控制平面还需要从选中的一级TT流队列剩余带宽中减去新增业务请求的带宽。
步骤204:控制平面将业务需求、本节点分配的传输时隙和门控列表配置信息填入时隙协商报文中。具体的,控制平面需要将业务需求(REQ_BANDWIDTH、REQ_MAX_DELAY、MAX_PKT_SIZE)、本节点分配的传输时隙(TSID)和门控列表列表配置信息(TS_LEN、TS_NUM)填入时隙协商报文的相应字段中。
步骤205:控制平面将时隙协商报文注入包处理芯片的TT流队列,同时更新注入时隙协商报文的时间戳(INJECT_TIME)。
步骤206:一级TT流队列的传输时隙到达时,业务报文被调度转发至下游节点的二级TT流队列中。
通过步骤201-步骤206,完成了业务与时隙的绑定,实了现业务的确定性调度。
如图6所示,对于传输路径的中间节点和尾节点完成了业务与时隙的绑定,实了现业务的确定性调度。
步骤301:包处理芯片接收时隙协商报文,更新时隙协商报文接收时间戳(RX_TIME),识别时隙协商报文类型后,提取时隙协商报文到控制单元。
步骤302:根据时隙协商报文的包头信息完成路由计算,获取时隙协商报文出接口。
步骤303:计算传输时延,根据时隙协商报文携带信息和出端口的门控列表配置计算满足需求的时隙,下发相关配置将业务与时隙对应的一级TT流队列绑定。
步骤305:将业务报文注入业务所绑定的一级TT流队列等待调度,更新报文注入时间(INJECT_TIME)、分配的时隙(TSID)和本设备的时隙表参数。
步骤306:绑定的一级TT流队列传输时隙时间达到时,业务报文被调度转发至下游节点的二级TT流队列中。
通过步骤301-步骤306,完成了业务与时隙的绑定,实了现业务的确定性调度。
由上述步骤过程可见,通过实施例1中提供的时间敏感业务缓存队列的调度系统,可以通过每个业务绑定的一级TT流队列独立的对每个业务对应的TT报文进行调度,避免了TT业务资源独占的问题。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种时间敏感业务缓存队列的调度系统,其特征在于,包括一级缓存队列、一级调度器、二级缓存队列和MAC,具体的:
所述一级缓存队列包含至少2个一级TT流队列和至少一个一级非TT流队列,每个一级TT流队列与一个传输时隙绑定;
所述一级调度器包含一个确定性时延调度器和至少一个差分业务调度器,确定性时延调度器中包含静态门控列表,静态门控列表根据时隙协商机制对一级TT流队列进行调度,差分业务调度器根据二级非TT流队列的流控信息控制一级非TT流队列的传输速率;
所述二级缓存队列包含一个二级TT流队列和一个二级非TT流队列,二级TT流队列和二级非TT流队列分别缓存从一级TT流队列和一级非TT流队列接收到的报文,在二级TT流队列非空时,二级TT流队列向MAC发起报文传输请求;
所述MAC为具有帧抢占功能的MAC,基于MAC的帧抢占机制优先发送二级TT流队列中的报文。
2.根据权利要求1所述的时间敏感业务缓存队列的调度系统,其特征在于,所述每个一级TT流队列与一个传输时隙绑定,具体包括:
根据时隙协商报文所传递的时隙信息测量出相邻设备间的传输时延,根据传输时延和上游节点的传输时隙计算报文在本设备中的传输时隙,每个业务对应一个传输时隙;
静态门控列表根据每个业务的传输时隙将一个周期划分为若干个时隙,各时隙之间无时间间隔,每个时隙对应一个一级TT流队列;
将每个时隙对应的业务与该时隙所控制的一级TT流队列绑定,该一级TT流队列用于缓存相应业务的报文。
3.根据权利要求2所述的时间敏感业务缓存队列的调度系统,其特征在于,所述根据时隙协商报文所传递的时隙信息测量出相邻设备间的传输时延,具体包括:
所述时隙协商报文在发送方向传输路径的首节点通过控制平面注入包处理芯片、在接收方向的中间节点和尾节点通过包处理芯片提取至控制平面,并在经过处理后再次注入包处理芯片,时隙协商报文包含转发实际业务所需的转发信息,以及注入报文时的时间戳和本站发送报文时隙信息,协商报文长度为业务设定的最大报文长度。
4.根据权利要求1所述的时间敏感业务缓存队列的调度系统,其特征在于,所述差分业务调度器根据二级非TT流队列的流控信息控制一级非TT流队列的传输速率,还包括:
二级非TT流队列基于队列长度向差分业务调度器发送流控信息,当差分业务调度器接收到二级非TT流队列发送的流控信息后,停止调度一级非TT流队列内的报文;
当二级非TT流队列长度降低至队列配置门限以下时,二级非TT流队列停止向差分业务调度器发送流控信息,差分业务调度器恢复调度一级非TT流队列内的报文。
5.根据权利要求1所述的时间敏感业务缓存队列的调度系统,其特征在于,所述基于MAC的帧抢占机制优先发送二级TT流队列中的报文,具体包括:
当MAC正在传输二级非TT流队列中的报文时,若二级TT流队列请求发送报文,MAC在传输64的字节整数倍包长的报文后让出通道,转而调度二级TT流队列中的报文。
6.一种时间敏感业务缓存队列的调度方法,其特征在于,使用权利要求1-5中任一项所述的时间敏感业务缓存队列的调度系统进行缓存队列的调度,具体包括:
根据时隙协商机制确定每个一级TT流队列使用的时隙,根据静态门控列表对一级TT流队列进行调度,一级TT流队列根据调度以接口最大速率向二级TT流队列发送报文;
根据差分服务模型对一级非TT流队列进行调度,并在二级非TT流队列拥塞时中止调度;
当二级TT流队列非空时,二级TT流队列向MAC发起报文传输请求,当二级TT流队列为空时,二级非TT流队列向MAC发起报文传输请求,获得传输许可后各队列以接口最大速率通过mac传输报文。
7.根据权利要求6所述的时间敏感业务缓存队列的调度方法,其特征在于,对于传输路径的首节点,所述每个一级TT流队列与一个传输时隙绑定,具体包括:
控制平面为每个确定性时延业务构造时隙协商报文,控制平面查询业务配置,确定时隙协商报文的出接口;
以流量均衡为原则,在业务报文出接口包含的所有一级TT流队列中选择剩余带宽满足需求的一级TT流队列作为承载本业务的一级TT流队;
控制平面将选择的一级TT流队列与本业务绑定,下发配置控制业务进入该一级TT流队列。
8.根据权利要求6所述的时间敏感业务缓存队列的调度方法,其特征在于,对于传输路径的首节点,所述根据时隙协商机制确定每个一级TT流队列使用的时隙,具体包括:
控制平面将业务需求、本节点分配的传输时隙和门控列表配置信息填入时隙协商报文中;
控制平面将时隙协商报文注入包处理芯片的TT流队列,同时更新注入时隙协商报文的时间戳;
被选中的一级TT流队列的传输时隙到达时,业务报文被调度转发至下游节点的二级TT流队列中。
9.根据权利要求6所述的时间敏感业务缓存队列的调度方法,其特征在于,对于传输路径的中间节点和尾节点,所述根据时隙协商机制确定每个一级TT流队列使用的时隙,具体包括:
包处理芯片接收时隙协商报文,更新时隙协商报文接收时间戳,识别时隙协商报文类型后,提取时隙协商报文到控制单元;
根据时隙协商报文的包头信息完成路由计算,获取时隙协商报文出接口;
计算传输时延,根据时隙协商报文携带信息和端口的门控列表配置计算满足需求的时隙,下发相关配置将业务与时隙对应的一级TT流队列绑定。
10.根据权利要求6所述的时间敏感业务缓存队列的调度方法,其特征在于,对于传输路径的中间节点和尾节点,所述根据时隙协商机制确定每个一级TT流队列使用的时隙,具体包括:
将业务报文注入业务所绑定的一级TT流队列等待调度,更新报文注入时间、分配的时隙和本设备的时隙表参数;
绑定的一级TT流队列传输时隙时间达到时,业务报文被调度转发至下游节点。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211581874.1A CN115883483A (zh) | 2022-12-09 | 2022-12-09 | 一种时间敏感业务缓存队列的调度系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211581874.1A CN115883483A (zh) | 2022-12-09 | 2022-12-09 | 一种时间敏感业务缓存队列的调度系统和方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115883483A true CN115883483A (zh) | 2023-03-31 |
Family
ID=85766877
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211581874.1A Pending CN115883483A (zh) | 2022-12-09 | 2022-12-09 | 一种时间敏感业务缓存队列的调度系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115883483A (zh) |
-
2022
- 2022-12-09 CN CN202211581874.1A patent/CN115883483A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11018791B2 (en) | Method and device for time-controlled data transmission in a time-sensitive network | |
US10218631B2 (en) | Method for traffic shaping of data frames in network and device and computer program product therefor | |
Thangamuthu et al. | Analysis of ethernet-switch traffic shapers for in-vehicle networking applications | |
JP4354711B2 (ja) | リアルタイムトラヒックに対する保証された帯域幅配達を備える遅延最小化システム | |
EP3319251B1 (en) | Apparatus and method of controlled delay packet forwarding | |
US7876692B2 (en) | Empirical scheduling of network packets using a plurality of test packets | |
EP4319055A1 (en) | Message transmission method and apparatus | |
US7529247B2 (en) | Empirical scheduling of network packets | |
CN101217495A (zh) | 用于t-mpls网络环境下的流量监控方法和装置 | |
US20220150159A1 (en) | Control device, switch device and methods | |
CN113383505A (zh) | 用于tsn集成的去抖动缓冲器能力的信令 | |
Joung et al. | Zero jitter for deterministic networks without time-synchronization | |
Soni et al. | Optimizing network calculus for switched ethernet network with deficit round robin | |
CN112821977A (zh) | 一种异步低延时时间敏感数据处理方法 | |
Deng et al. | A low-delay AVB flow scheduling method occupying the guard band in Time-Sensitive Networking | |
CN100466593C (zh) | 一种支持多业务的综合队列调度的实现方法 | |
CN115242728B (zh) | 一种报文传输方法及装置 | |
CN115883483A (zh) | 一种时间敏感业务缓存队列的调度系统和方法 | |
JP2023073204A (ja) | 統合されたtsnおよび5g展開のためのシステムレベルのスケジュール生成 | |
CN117378215A (zh) | 在分组交换网络中实现的用于调度以太网帧的传输的方法、计算机程序和设备 | |
CN113271262A (zh) | 交叉式确定性数据传输方法和装置 | |
Han et al. | A traffic scheduling algorithm combined with ingress shaping in TSN | |
WO2022201288A1 (ja) | 信号転送装置、信号転送方法、信号転送プログラム、及び信号転送システム | |
WO2024016327A1 (zh) | 报文传输 | |
Kong et al. | Run-time per-class routing of AVB flows in in-vehicle TSN via composable delay analysis |
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 |