CN112019392B - 一种用于tsn网络的多特征流接入方法 - Google Patents
一种用于tsn网络的多特征流接入方法 Download PDFInfo
- Publication number
- CN112019392B CN112019392B CN202011201252.2A CN202011201252A CN112019392B CN 112019392 B CN112019392 B CN 112019392B CN 202011201252 A CN202011201252 A CN 202011201252A CN 112019392 B CN112019392 B CN 112019392B
- Authority
- CN
- China
- Prior art keywords
- time
- bandwidth
- stream
- frame
- sent
- 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.)
- Active
Links
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/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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Small-Scale Networks (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种用于TSN网络的多特征流接入方法,将网络中的流按照特征分为周期性的时间敏感流、带宽保证流、尽力转发流,通过在数据发送端进行条件约束来调度时间敏感流的发送时间点和带宽保证流的发送数据量,以及通过改进的CBS算法来对带宽保证流进行整形,来保证经过CQF交换机后时间敏感流的时间确定性和带宽保证流的流量确定性,并确保经过CQF交换机后不会因为循环队列的溢出或者超过端口的最大带宽而造成数据的丢失。
Description
技术领域
本发明涉及计算机网络技术领域,具体地涉及一种用于TSN网络的一种多特征流的接入方法。
背景技术
时间敏感网络(timesensitive network,TSN)是目前国际产业界正在积极推动的全新工业通信技术。其中子协议IEEE Std 802.1Qch定义了一种对时间敏感流提供确定性传输延迟的方案,它提供了一种基于CQF(cyclicqueuingand for forwarding,循环队列)的确定性传输技术,假设路径有h跳,数据在每个交换机停留时间是d,则经过CQF交换机后的最大延时是(h+1)*d,最小延时是(h-1)*d。
现有的CQF交换机侧的调度基本原理如下:
在交换机的输出端口为时间敏感帧设置两个由时间门控制的队列Q0和Q1。偶数时间槽,队列Q0保存输入端口接收的帧(接收模式,不发送帧),同时队列Q1发送在上一个奇数时间槽缓存的数据帧(发送模式,不接收帧);奇数时间槽,两个队列的操作正好相反。因此,两个队列循环地进行分组缓存和调度输出操作,这也是CQF名称的来由。每个时间槽的时间长度是d。
实际网络中存在多种特性的流,主要包括周期性的时间敏感流,带宽保证流,还有尽力转发流,一般为了考虑多种特性流的并存,交换机将对时间最敏感的流映射到对应于trafficclass是7和6的队列,优先级最高,可以抢占其他流。带宽保证流映射到次一级的trafficclass,尽力转发流映射到最低级的trafficclass。
TSN交换机很多都是采用CQF方案,但是这个方案有几个缺陷:
1.在队列接收周期,如果来自与多个端口的时间敏感流超过了Q0或者Q1的大小,势必造成时间敏感数据的丢包,从而无法保证确定性时延。
2.如果来自于多个端口的带宽保证流和时间敏感流在同一时间从同一个端口发出,超过了端口的总带宽,会造成带宽保证流的丢包,从而破坏了可靠性,需要牺牲额外的带宽来进行重传。
发明内容
针对现有技术存在的问题,本发明提出了一种用于TSN网络的一种多特征流的接入方法。
该方法通过在数据发送端调度时间敏感流的发送时间点和带宽保证流发送数据量,从而在基于CQE的TSN交换机网络环境中避免上述情况的出现。
本发明的目的是通过以下技术方案来实现的:一种用于TSN网络的多特征流接入方法,包括以下步骤:
步骤一:同步用户主机和网络设备;
步骤二:TSN网络中的CUC功能单元收集用户主机的需求。TSN网络中共有R个时间敏感流和S个带宽保证流,对第i个时间敏感流,用户主机提供发送周期Ti,每个周期内发送的最大数据量为Bi字节;对第j个带宽保证流,用户主机提供需要预留的带宽Wj,Wj<1;
步骤三:所述CUC功能单元收集到用户主机需求后,反馈给CNC功能单元,CNC功能单元根据TSN网络的信息和CUC功能单元提供的用户主机的需求,根据约束条件计算每个用户主机的调度信息,所述TSN网络信息包括CQF交换机的队列长度Q和交换机端口的带宽BandWidth,所述调度信息包括时间敏感流的发送起始时间Starti和带宽保证流每个时间槽内传输的数据量Gj,t;
步骤四:CNC功能单元通过CUC功能单元将调度信息传递给对应的用户主机,对于时间敏感流,传递时间敏感流的发送起始时间Starti、时间槽长度d和周期Tmax,对于带宽保证流,传递每个时间槽内传输的数据量Gj,t、时间槽长度d和周期Tmax。所述用户主机拿到调度信息后,进行数据发送,发送的数据包括:时间敏感流、带宽保证流和尽力转发流。对于时间敏感流,在离当前最近的一个时间点Starti+A*T,启动数据发送,T=Tmax*d,T为调度周期,A为系数且为整数,并将所述时间敏感流优先级映射为7;对于带宽保证流采用改进的CBS算法来实现,并将带宽保证流的优先级映射为5;对于尽力转发流的优先级映射小于5。
所述改进的CBS算法的具体方法为:
(a)数据发送的队列中存在着Frame0,Frame1,Frame2,...,FrameK+1个带宽保证流对应的帧,但是时间敏感流对应的帧、尽力转发流对应的帧正在发送,或者优先级更高的时间敏感需要发送,使得Frame0,Frame1,Frame2,...,FrameK+1个带宽保证流对应的帧得不到发送,此时信用值不断增加,所述信用值的上限是IEEE802.1Qav规定的hiCredit,
hiCredit=maxInterferenceSize×(idleSlope/portTransmitRate),
其中,maxInterferenceSize表示端口能够发送的最大帧长度,idleSlope表示信用值增长的斜率,portTransmitRate表示端口的发送速率;
(b)待时间敏感流对应的帧、尽力转发流对应的帧发送完毕,或者优先级更高的时间敏感发送完毕,Frame0,Frame1,Frame2,...,FrameK+1个带宽保证流对应的帧得到发送的机会,Frame0发送,信用值不断下降,直到Frame0发送完成;
(c)如果信用值仍然大于0,但是此时间槽内剩余的用来传输带宽保证流的字节数小于Frame1的大小,Frame1得不到发送,信用值不断增加。在第t个时间槽内,FrameK+1能够得到发送需要的条件除了IEEE802.1Qav定义的信用值必须大于0,还需要满足:
Gj,t是来自于CNC功能单元的第j个带宽保证流能够在第t个时间槽发送的总数据量,表示此带宽保证流已经发送的带宽保证流的总数据量,即Frame0到FrameK的总大小,Sizej,K+1表示FrameK+1的帧大小;
(d)一个新的时间槽开始,周期内的信用值大于0,而且分配的Gj,t+1大于0,Frame1得到发送,信用值减小;
(e)信用值仍然大于0,时间槽内剩余的用来传输带宽保证流的字节数大于Frame2的大小,Frame2继续传输,信用值不断减小;
(f)将队列里的帧发送完毕以后,如果没有新来的带宽保证流数据,信用值回到0;如果还有帧没有得到发送,继续重复上述步骤(a)-(e)来发送。
进一步地,所述约束条件具体为:
其中,t=0,1,...,Tmax-1,Bi,t,k,p表示在第t个时间槽的第k个交换机的第p个端口,进入端口p缓冲队列的第i个时间敏感流的数据量大小,Gj,t,k,p表示在第t个时间槽的第k个交换机的第p个端口,从端口p发送的第j个带宽保证流数据量大小,Di,t,k,p表示在第t个时间槽的第k个交换机的第p个端口,从端口p发送的第i个时间敏感流的数据量大小;N为端口p缓存队列的时间敏感流总条数,L为发送的时间敏感流条数,M为从p端口发送的带宽保证流的总条数。
进一步地,所述时间槽长度d为所有时间敏感流周期的最大公约数。
与现有技术相比,本发明具有如下有益效果:综合考虑了全网多特征流的特性,通过在用户主机的调度,使流经过TSN网络以后既保证了时间敏感流的传输确定性和带宽保证流的带宽,又确保不会因为网络拥塞和CQF队列溢出造成丢包。因此,该多特征流的接入方法具有确定性传输以及带宽保证无丢包的特点。
附图说明
图1为CQF调度示意图;
图2为本发明多特征流的接入方法的流程图;
图3为改进的CBS算法图。
具体实施方式
为了使本发明的目的更加明白,下面结合附图对本发明的技术方案作进一步描述。
本发明提供了一种用于TSN网络的多特征流接入方法,包括以下步骤:
步骤一:同步用户主机和网络设备;本领域技术人员可采用1588,1588V2,IEEE802.1AS等进行同步;
步骤二:TSN网络中的CUC功能单元收集用户主机的需求。TSN网络中共有R个时间敏感流和S个带宽保证流,对第i个时间敏感流,用户主机提供发送周期Ti,每个周期内发送的最大数据量为Bi字节;对第j个带宽保证流,用户主机提供需要预留的带宽Wj,Wj<1;
步骤三:所述CUC功能单元收集到用户主机需求后,反馈给CNC功能单元,CNC功能单元根据TSN网络的信息和CUC功能单元提供的用户主机的需求,根据约束条件计算每个用户主机的调度信息,如图1所示,所述TSN网络信息包括CQF交换机的队列长度Q和交换机端口的带宽BandWidth,所述调度信息包括时间敏感流的发送起始时间Starti和带宽保证流每个时间槽内传输的数据量Gj,t;
对于时间敏感流i的约束条件为:因为CQF的特性,只要确定它的发送起始时间Starti,还有传输路径,那么流进入和离开每个交换机的时间都是确定的,所以假设在第t个时间槽的第k个交换机的第p个端口,进入端口p缓存队列的时间敏感流一共有N条,则调度算法需要满足进入队列的数据量不能超过队列长度Q:
对于带宽保证流j,需要确定每个时间槽t内能够传输的数据量Gj,t,t=0,1,...Tmax-1,Tmax*d是一个完整的调度周期,在第t个时间槽的第k个交换机的第p个端口,从端口p发送的带宽保证流一共有M条,发送的时间敏感流一共有L条,则需要满足端口的带宽约束条件:
对于带宽保证流j满足各自的带宽约束条件:
表示CNC功能单元预留出来的带宽应该大于用户要求的带宽,用户执行的时候需要用改进的CBS(creditbasedshaper)算法控制自己的发送数据,使实际使用的带宽小于或者等于要求的带宽。CNC功能单元根据上述三个约束条件,并结合每个流的传输路径,可以计算时间敏感流的发送起始时间Starti和带宽保证流每个时间槽内能够传输的数据量Gj,t;
其中,t=0,1,...,Tmax-1,Bi,t,k,p表示在第t个时间槽的第k个交换机的第p个端口,进入端口p缓冲队列的第i个时间敏感流的数据量大小,Gj,t,k,p表示在第t个时间槽的第k个交换机的第p个端口,从端口p发送的第j个带宽保证流数据量大小,Di,t,k,p表示在第t个时间槽的第k个交换机的第p个端口,从端口p发送的第i个时间敏感流的数据量大小;N为端口p缓存队列的时间敏感流总条数,L为发送的时间敏感流条数,M为从p端口发送的带宽保证流的总条数。
步骤四:CNC功能单元通过CUC功能单元将调度信息传递给对应的用户主机,对于时间敏感流,传递时间敏感流的发送起始时间Starti,对于带宽保证流,传递每个时间槽内传输的数据量Gj,t、时间槽长度d和周期Tmax。所述用户主机拿到调度信息后,进行数据发送,发送的数据包括:时间敏感流、带宽保证流和尽力转发流,具体流程图如图2。对于时间敏感流,在离当前最近的一个时间点Starti+A*T,启动数据发送,T=Tmax*d,T为调度周期,A为系数且为整数,并将所述时间敏感流优先级映射为7;对于带宽保证流采用改进的CBS(creditbasedshaper)算法来实现,并将带宽保证流的优先级映射为5;对于尽力转发流的优先级映射小于5。
所述改进的CBS算法的具体方法如图3:传统的CBS算法只考虑了如何确保带宽保证流的带宽,改进后的CBS算法考虑了其和时间敏感流共存的情况,适用于多种特征流共存的场景。
(a)数据发送的队列中存在着Frame0,Frame1,Frame2,...,FrameK+1个带宽保证流对应的帧,但是时间敏感流对应的帧、尽力转发流对应的帧正在发送,或者优先级更高的时间敏感需要发送,使得Frame0,Frame1,Frame2,...,FrameK+1个带宽保证流对应的帧得不到发送,此时信用值不断增加,所述信用值的上限是IEEE802.1Qav规定的hiCredit,
hiCredit=maxInterferenceSize×(idleSlope/portTransmitRate),
其中,maxInterferenceSize表示端口能够发送的最大帧长度,idleSlope表示信用值增长的斜率,portTransmitRate表示端口的发送速率;
(b)待时间敏感流对应的帧、尽力转发流对应的帧发送完毕,或者优先级更高的时间敏感发送完毕,Frame0,Frame1,Frame2,...,FrameK+1个带宽保证流对应的帧得到发送的机会,Frame0发送,信用值不断下降,直到Frame0发送完成;
(c)如果信用值仍然大于0,但是此时间槽内剩余的用来传输带宽保证流的字节数小于Frame1的大小,Frame1得不到发送,信用值不断增加。在第t个时间槽内,FrameK+1能够得到发送需要的条件除了IEEE802.1Qav定义的信用值必须大于0,还需要满足:
Gj,t是来自于CNC功能单元的第j个带宽保证流能够在第t个时间槽发送的总数据量,表示此带宽保证流已经发送的带宽保证流的总数据量,即Frame0到FrameK的总大小,Sizej,K+1表示FrameK+1的帧大小;
(d)一个新的时间槽开始,周期内的信用值大于0,而且分配的Gj,t+1大于0,Framel得到发送,信用值减小;
(e)信用值仍然大于0,时间槽内剩余的用来传输带宽保证流的字节数大于Frame2的大小,Frame2继续传输,信用值不断减小;
(f)队列里的帧发送完毕以后,如果没有新来的带宽保证流数据,信用值回到0;如果还有帧没有得到发送,继续重复上述步骤(a)-(e)来发送。
将该方法可以应用在工业互联网、高端装备等领域,具有的优点是既可以确保控制流的时间确定性又能够保证一些需要固定带宽的业务的带宽确定性,同时也提供了相对可靠地传输。
Claims (3)
1.一种用于TSN网络的多特征流接入方法,其特征在于,包括以下步骤:
步骤一:同步用户主机和网络设备;
步骤二:TSN网络中的CUC功能单元收集用户主机的需求;TSN网络中共有R个时间敏感流和S个带宽保证流,对第i个时间敏感流,用户主机提供发送周期Ti,每个周期内发送的最大数据量为Bi字节;对第j个带宽保证流,用户主机提供需要预留的带宽Wj,Wj<1;
步骤三:所述CUC功能单元收集到用户主机需求后,反馈给CNC功能单元,CNC功能单元根据TSN网络的信息和CUC功能单元提供的用户主机的需求,根据约束条件计算每个用户主机的调度信息,所述TSN网络信息包括CQF交换机的队列长度Q和交换机端口的带宽BandWidth,所述调度信息包括时间敏感流的发送起始时间Starti和带宽保证流每个时间槽内传输的数据量Gj,t;
步骤四:CNC功能单元通过CUC功能单元将调度信息传递给对应的用户主机,对于时间敏感流,传递时间敏感流的发送起始时间Starti,对于带宽保证流,传递每个时间槽内传输的数据量Gj,t、时间槽长度d和调度周期Tmax;所述用户主机拿到调度信息后,进行数据发送,发送的数据包括:时间敏感流、带宽保证流和尽力转发流;对于时间敏感流,在离当前最近的一个时间点Starti+A*T,启动数据发送,T=Tmax*d,T为调度周期,A为系数且为整数,并将所述时间敏感流优先级映射为7;对于带宽保证流采用改进的CBS算法来实现,并将带宽保证流的优先级映射为5;对于尽力转发流的优先级映射小于5;
所述改进的CBS算法的具体方法包括如下步骤:
(a)数据发送的队列中存在着Frame0,Frame1,Frame2,…,FrameK+1个带宽保证流对应的帧,但是时间敏感流对应的帧、尽力转发流对应的帧正在发送,或者优先级更高的时间敏感流需要发送,使得Frame0,Frame1,Frame2,…,FrameK+1个带宽保证流对应的帧得不到发送,此时信用值不断增加,所述信用值的上限是IEEE802.1Qav规定的hiCredit,
hiCredit=maxInterferenceSize×(idleSlope/portTransmitRate),
其中,maxInterferenceSize表示端口能够发送的最大帧长度,idleSlope表示信用值增长的斜率,portTransmitRate表示端口的发送速率;
(b)待时间敏感流对应的帧、尽力转发流对应的帧发送完毕,或者优先级更高的时间敏感流发送完毕,Frame0,Frame1,Frame2,…,FrameK+1个带宽保证流对应的帧得到发送的机会,Frame0发送,信用值不断下降,直到Frame0发送完成;
(c)如果信用值仍然大于0,但是此时间槽内剩余的用来传输带宽保证流的字节数小于Frame1的大小,Frame1得不到发送,信用值不断增加;在第t个时间槽内,FrameK+1能够得到发送需要的条件除了IEEE802.1Qav定义的信用值必须大于0,还需要满足:
Gj,t是来自于CNC功能单元的第j个带宽保证流能够在第t个时间槽发送的总数据量,表示第j个带宽保证流已经发送的带宽保证流的总数据量,即Frame0到FrameK的总大小,Sizej,K+1表示FrameK+1的帧大小;
(d)一个新的时间槽开始,周期内的信用值大于0,而且分配的Gj,t+1大于0,Frame1得到发送,信用值减小;
(e)信用值仍然大于0,时间槽内剩余的用来传输带宽保证流的字节数大于Frame2的大小,Frame2继续传输,信用值不断减小;
(f)将队列里的帧发送完毕以后,如果没有新来的带宽保证流数据,信用值回到0;如果还有帧没有得到发送,继续重复上述步骤(a)-(e)来发送。
3.根据权利要求1所述用于TSN网络的多特征流接入方法,其特征在于,所述时间槽长度d为所有时间敏感流周期的最大公约数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011201252.2A CN112019392B (zh) | 2020-11-02 | 2020-11-02 | 一种用于tsn网络的多特征流接入方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011201252.2A CN112019392B (zh) | 2020-11-02 | 2020-11-02 | 一种用于tsn网络的多特征流接入方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112019392A CN112019392A (zh) | 2020-12-01 |
CN112019392B true CN112019392B (zh) | 2021-02-09 |
Family
ID=73527961
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011201252.2A Active CN112019392B (zh) | 2020-11-02 | 2020-11-02 | 一种用于tsn网络的多特征流接入方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112019392B (zh) |
Families Citing this family (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116711287A (zh) * | 2020-12-16 | 2023-09-05 | 华为技术有限公司 | 循环队列和转发(cqf)分段 |
CN112769514A (zh) * | 2020-12-22 | 2021-05-07 | 国家电网有限公司 | 基于时间敏感的通信设备 |
CN114666809A (zh) * | 2020-12-23 | 2022-06-24 | 华为技术有限公司 | 数据发送的方法和装置 |
CN112751783B (zh) * | 2020-12-30 | 2022-09-23 | 重庆邮电大学 | 一种时间敏感网络门控整形资源调度方法 |
CN112737979B (zh) * | 2021-01-29 | 2022-12-09 | 西安电子科技大学 | 一种时间敏感网络尽力而为流调度方法 |
CN113055303B (zh) * | 2021-03-24 | 2022-06-03 | 重庆邮电大学 | 一种适用于时间敏感网络中多周期应用的门控调度方法 |
CN115242647A (zh) * | 2021-04-06 | 2022-10-25 | 中国电信股份有限公司 | 用于动态流量整形的方法和装置 |
CN113271262A (zh) * | 2021-07-20 | 2021-08-17 | 浙江大学 | 交叉式确定性数据传输方法和装置 |
CN114338555B (zh) * | 2021-11-16 | 2024-02-06 | 北京邮电大学 | 一种用于实现广域确定性网络的全网周期标签规划的方法及装置 |
CN115865810B (zh) * | 2023-02-22 | 2023-06-09 | 浙江中控研究院有限公司 | 一种时间敏感网络中信用值流量调度系统及方法 |
-
2020
- 2020-11-02 CN CN202011201252.2A patent/CN112019392B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN112019392A (zh) | 2020-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112019392B (zh) | 一种用于tsn网络的多特征流接入方法 | |
US6490248B1 (en) | Packet transfer device and packet transfer method adaptive to a large number of input ports | |
US5528591A (en) | End-to-end credit-based flow control system in a digital communication network | |
US7567620B2 (en) | Data transmission scheme using channel group and DOCSIS implementation thereof | |
EP1811725B1 (en) | Packet discard in a multiplexer | |
US8259738B2 (en) | Channel service manager with priority queuing | |
JP4547339B2 (ja) | 送信制御機能を備えるパケット中継装置 | |
EP1303083A1 (en) | Packet scheduling apparatus | |
KR20050004239A (ko) | 셀들의 캡슐화를 위한 방법 및 시스템 | |
CN113366805A (zh) | 报文调度方法、调度器、网络设备和网络系统 | |
US20190109728A1 (en) | Method to improve availability of real-time computer networks | |
US7355976B2 (en) | Method and apparatus for providing retry control, buffer sizing and management | |
EP3032785B1 (en) | Transport method in a communication network | |
JPH09149051A (ja) | パケット転送装置 | |
JP4842754B2 (ja) | 通信装置および通信方法 | |
US7295564B2 (en) | Virtual output queue (VoQ) management method and apparatus | |
WO2002098047A2 (en) | System and method for providing optimum bandwidth utilization | |
US20120020313A1 (en) | Packet scheduling system for digital video broadcasting | |
US20110158093A1 (en) | Bandwidth control method and bandwidth control device in node device | |
CN114615211A (zh) | 一种有线无线融合的航天器内时间敏感网络队列管理调度方法 | |
CN110868359A (zh) | 一种网络拥塞控制方法 | |
JP2008502192A (ja) | 多重化されたリンクに対するバックプレッシャ方法 | |
JP2003518874A (ja) | データ通信 | |
US8467401B1 (en) | Scheduling variable length packets | |
CN115643220A (zh) | 基于抖动时延的确定性业务传输方法和装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |