CN117714368A - 一种基于分段路由的确定性时延路由调度方法和系统 - Google Patents
一种基于分段路由的确定性时延路由调度方法和系统 Download PDFInfo
- Publication number
- CN117714368A CN117714368A CN202311635255.0A CN202311635255A CN117714368A CN 117714368 A CN117714368 A CN 117714368A CN 202311635255 A CN202311635255 A CN 202311635255A CN 117714368 A CN117714368 A CN 117714368A
- Authority
- CN
- China
- Prior art keywords
- data packet
- delay
- node
- queue
- deadline
- 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
- 238000000034 method Methods 0.000 title claims abstract description 53
- 230000005540 biological transmission Effects 0.000 claims abstract description 33
- 238000004422 calculation algorithm Methods 0.000 claims description 21
- 125000004122 cyclic group Chemical group 0.000 claims description 17
- 238000012545 processing Methods 0.000 claims description 16
- 238000004364 calculation method Methods 0.000 claims description 8
- 230000001419 dependent effect Effects 0.000 claims description 7
- 230000006870 function Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 4
- 238000005516 engineering process Methods 0.000 description 9
- 230000008901 benefit Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 4
- 230000001934 delay Effects 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 3
- 238000007792 addition Methods 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 230000006855 networking Effects 0.000 description 2
- 239000002243 precursor Substances 0.000 description 2
- 230000001960 triggered effect Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000013178 mathematical model Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
Classifications
-
- 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/12—Shortest path evaluation
- H04L45/121—Shortest path evaluation by minimising delays
-
- 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/24—Multipath
- H04L45/245—Link aggregation, e.g. trunking
-
- 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/34—Source 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/38—Flow based 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/32—Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
- H04L47/326—Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames with random discard, e.g. random early discard [RED]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/50—Queue scheduling
- H04L47/62—Queue scheduling characterised by scheduling criteria
- H04L47/622—Queue service order
- H04L47/6225—Fixed service order, e.g. Round Robin
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明提供一种基于分段路由的确定性时延路由调度方法和系统,该方法包括:获取数据包并计算源节点到目标节点的最短时延路径。计算最短时延路径上每个中继节点的截止时间偏移向量,并将其写入数据包头部信息中。沿最短时延路径传输数据包,在中继节点排队前,计算数据包的丢弃概率,若概率高于随机生成数则在当前节点丢弃数据包。利用循环队列转发模型建立的三队列循环排队转发模型,计算数据包在每个中继节点应排入的队列,以最小化数据包在每个中继节点的排队时延。设定每个中继节点在其对应的截止时间偏移向量之前传输数据包。本发明能够满足确定性时延网络路由调度对低延迟和负载均衡的传输需求。
Description
技术领域
本发明涉及计算机网络技术领域,尤其涉及一种基于分段路由的确定性时延路由调度方法和系统。
背景技术
随着工业互联网的快速发展以及智能电网、工业自动化和移动前端等各种有卓越前景的应用的出现,确定性延迟和高可靠性的网络传输要求在当今作用愈发凸显。如何有效地利用新型网络技术来优化提升网络传输总体性能具有重要的研究价值。分段路由(Segment Routing)是一种源路由协议,其核心思想是将网络报文转发路径切割为不同的分段,并在路径起始点往报文中插入分段信息指导报文转发。因为SR入口节点在SR头中编码全部路径信息,所以不需要中转节点来维护转发路径信息,它们只需要处理数据包头中的数据段标识符,将数据包从当前节点转发到下一个节点即可,不需要中转节点来维护路径信息避免了与维护信息相关的成本。
SR技术与确定性网络的结合使得网络调度转发性能的进一步提升有了更明确的思路。传统的IP网络下,数据包的转发路径是随机的,导致时延无法事先预测,这种情况无法满足对时延敏感的垂直行业的需求。而SR技术与IPv6网络结合的SRv6技术为时延敏感分组的转发提出了更加清晰直接的解决方案:利用分段路由技术的源路由机制和SRv6Policy功能,能够解决跨越多个网络指定路径的挑战,从而实现端到端的确定路径转发能力,为构建确定性时延网络提供了可靠的基础。然而针对确定性时延路由的现有技术方案难以兼顾负载均衡和低延迟的需求。
发明内容
鉴于此,本发明实施例提供了一种基于分段路由的确定性时延路由调度方法和系统,以满足确定性时延网络对低延迟和负载均衡的传输需求。
本发明的一个方面提供了一种基于分段路由的确定性时延路由调度方法,该方法包括以下步骤:
获取数据包,计算源节点到目标节点的最短时延路径,根据所述数据包自带截止时间计算所述最短时延路径上每个中继节点的截止时间偏移向量,并将所述截止时间偏移向量写入所述数据包头部信息中;
沿所述最短时延路径传输数据包,所述数据包在所述中继节点排队前,当链路负载超过设定值,根据链路负载、所述数据包自带截止时间和当前中继节点到所述目标节点的时延信息,计算所述数据包的丢弃概率,若所述丢弃概率高于随机生成数则在当前节点丢弃数据包;
利用基于循环队列转发模型建立的三队列循环排队转发模型,计算所述数据包在每个中继节点应排入的队列,以最小化所述数据包在每个中继节点的排队时延;
设定每个中继节点在该中继节点对应的截止时间偏移向量之前传输数据包。
在本发明的一些实施例中,所述计算源节点到目标节点的最短时延路径,所述最短时延路径取决于路径上的链路时延,所述链路时延取决于链路的距离。
在本发明的一些实施例中,所述计算源节点到目标节点的最短时延路径的算法包括:
基于Dijkstra算法,遍历所有节点并更新所有节点之间的时延,计算所述源节点到所述目标节点的所述最短时延路径。
在本发明的一些实施例中,根据所述数据包自带截止时间计算所述最短时延路径上每个中继节点的截止时间偏移向量,并将所述截止时间偏移向量写入所述数据包头部信息中,具体包括:
根据所述最短时延路径和所述数据包自带截止时间,计算每个中继节点的最坏情况排队时延;
根据每个中继节点的最坏情况排队时延,结合由所述最短时延路径获得的链路时延和节点处理时延,计算每个中继节点的最坏情况总时延,以构造所述截止时间偏移向量,写入所述数据包头部信息中。
在本发明的一些实施例中,所述数据包头部信息还包括:
所述数据包自带截止时间、所述源节点地址、所述目标节点地址、所述数据包序号和所述数据包偏移。
在本发明的一些实施例中,根据链路负载、所述数据包自带截止时间和当前中继节点到所述目标节点的时延信息,计算所述数据包的丢弃概率,计算方法包括:
所述丢弃概率P的计算式为:
其中,Tmax表示所述中继节点到所述目标节点的最坏情况端到端时延,Tmin表示所述中继节点到所述目标节点的链路时延,ddl表示所述数据包自带截止时间。
在本发明的一些实施例中,利用基于循环队列转发模型建立的三队列循环排队转发模型,所述三队列循环排队在循环队列转发模型基础上增加一个缓冲队列,所述三队列循环排队转发模型的约束条件包括:
任一时刻只有一个队列处于发送包状态,表示为:
队列q不能同时接收和发送数据包,表示为:
任何队列从Tmin到Tmax发送的包数不超过其队列的最大长度,表示为:
任何队列的传输时延都不超过最大时延限制,表示为:
其中,Tmax表示所述中继节点到所述目标节点的最坏情况端到端时延,Tmin表示所述中继节点到所述目标节点的链路时延,为0或1变量,表示队列q中数据包在任何时候t的发送状态。0表示不发送,1表示发送,q是队列号;/>为0或1变量,表示队列q中数据包在任何时刻t的接收状态,0表示不接收,1表示接收;Lmax表示队列的最大长度;Dmax所述中继节点的最大时延约束;d表示周期时间。
在本发明的一些实施例中,所述最小化所述数据包在每个中继节点的排队时延,通过将所述三队列循环排队转发模型的目标函数设置为最小化排队时延获得,计算式如下:
其中,d表示周期时间,表示数据包i进入队列的时间槽t1,/>表示数据包i进入队列的时间槽t2。
本发明的另一个方面提供了一种基于分段路由的确定性时延路由调度系统,包括源节点、目标节点、多个中继节点、处理器和存储器,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该系统实现如上述方法的步骤。
本发明的另一个方面提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如上述方法的步骤。
本发明的有益效果至少包括:
本发明提供一种基于分段路由的确定性时延路由调度方法和系统,所述方法包括:获取数据包并计算源节点到目标节点的最短时延路径。计算最短时延路径上每个中继节点的截止时间偏移向量,并将其写入数据包头部信息中。沿最短时延路径传输数据包,在中继节点排队前,计算数据包的丢弃概率,若概率高于随机生成数则在当前节点丢弃数据包。利用循环队列转发模型建立的三队列循环排队转发模型计算数据包在每个中继节点应排入的队列,以最小化数据包在每个中继节点的排队时延。设定每个中继节点在其对应的截止时间偏移向量之前传输数据包。本发明利用SR技术的源路由优势,在源节点确定数据包的完整路径,避免不确定的网络状况对时延的影响。在路由和调度流量的同时,实现了有界的时延和较低的丢包率,从而为时间敏感的流量提供可靠的传输服务。
本发明的附加优点、目的,以及特征将在下面的描述中将部分地加以阐述,且将对于本领域普通技术人员在研究下文后部分地变得明显,或者可以根据本发明的实践而获知。本发明的目的和其它优点可以通过在说明书以及附图中具体指出的结构实现到并获得。
本领域技术人员将会理解的是,能够用本发明实现的目的和优点不限于以上具体所述,并且根据以下详细说明将更清楚地理解本发明能够实现的上述和其他目的。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,并不构成对本发明的限定。在附图中:
图1为本发明一实施例所述基于分段路由的确定性时延路由调度方法流程图。
图2为本发明另一实施例所述路由调度方法流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施方式和附图,对本发明做进一步详细说明。在此,本发明的示意性实施方式及其说明用于解释本发明,但并不作为对本发明的限定。
在此,还需要说明的是,为了避免因不必要的细节而模糊了本发明,在附图中仅仅示出了与根据本发明的方案密切相关的结构和/或处理步骤,而省略了与本发明关系不大的其他细节。
应该强调,术语“包括/包含”在本文使用时指特征、要素、步骤或组件的存在,但并不排除一个或更多个其它特征、要素、步骤或组件的存在或附加。
在此,还需要说明的是,如果没有特殊说明,术语“连接”在本文不仅可以指直接连接,也可以表示存在中间物的间接连接。
在下文中,将参考附图描述本发明的实施例。在附图中,相同的附图标记代表相同或类似的部件,或者相同或类似的步骤。
分段路由是一种网络路由的方法,它允许在网络中定义路径,并在数据包头部携带路径信息。这种方法的核心思想是将整个路径划分为一系列分段,每个分段对应网络中的一个节点。数据包通过沿着这些分段传递,从而实现指定路径的路由。
确定性时延路由调度是一种网络调度技术,旨在通过选择特定的路由路径和传输时机,使数据包在网络中具有确定性的传输时延。在传统网络中,数据包的传输时延通常受多种因素的影响,比如网络拥塞、随机路由选择等,导致传输时延难以预测和控制。而确定性时延路由调度技术通过预先设计网络拓扑、配置路由策略和调整传输时机等手段,在网络中实现对数据包传输时延的精确控制。通过应用确定性时延路由技术,时间敏感网络(time sensitive networking,TSN)可以提供可靠的、具有确定性的实时通信能力,满足各种对实时性和传输时延要求较高的应用场景的需求,比如工业自动化、智能交通等。
本发明的一个实施例的一个方面提供了一种基于分段路由的确定性时延路由调度方法,如图1所示,该方法包括以下步骤S101~S104:
步骤S101:获取数据包,计算源节点到目标节点的最短时延路径,根据数据包自带截止时间计算最短时延路径上每个中继节点的截止时间偏移向量,并将截止时间偏移向量写入数据包头部信息中。
其中,数据包自带截止时间能够指示数据包必须在指定的时间内到达目的节点。这个信息被添加在数据包的分段路由头部,以确保网络在传输过程中能够根据这一时间要求进行调度和决策。
其中,截止时间偏移向量是以数据包自带截止时间为参考时间点,结合分段路由上的总时延,计算出的数据包离开中继节点的预估时间。分段路由上的总时延包括链路时延和节点时延,节点时延包括处理时延和排队时延。在确定性网络路径下,链路时延只取决于链路距离,链路时延可以视为常数。处理时延与节点计算能力和负载有关,假设为常数。排队时延是通过排队理论建模计算的随机过程。
步骤S102:沿最短时延路径传输数据包,数据包在中继节点排队前,当链路负载超过设定值,根据链路负载、数据包自带截止时间和当前中继节点到目标节点的时延信息,计算数据包的丢弃概率,若丢弃概率高于随机生成数则在当前节点丢弃数据包。
其中,在排队前按照丢弃概率随机丢弃数据包,旨在减少网络负载较高时的拥塞现象,并提高目的节点的数据包接收率。
步骤S103:利用基于循环队列转发模型建立的三队列循环排队转发模型计算数据包在每个中继节点应排入的队列,以最小化数据包在每个中继节点的排队时延。
其中,循环队列转发模型(CQF)是一种用于处理数据包转发的调度算法,可以为时间敏感的流量提供确定的、易于计算的延迟。循环队列转发模型(CQF)有两个队列,本实施例中增加了一个缓冲队列,用于吸收在错误周期到达的数据包,其作用是吸收突发流量并提供保护带宽。
步骤S104:设定每个中继节点在该中继节点对应的截止时间偏移向量之前传输数据包。
在本发明的一些实施例中,计算源节点到目标节点的最短时延路径,最短时延路径取决于路径上的链路时延,链路时延取决于链路的距离。
在本发明的一些实施例中,计算源节点到目标节点的最短时延路径的算法包括:
基于Dijkstra算法,遍历所有节点并更新所有节点之间的时延,计算源节点到目标节点的最短时延路径。
具体地,基于Dijkstra算法的最短时延路径的算法包括以下步骤S1011~S1013:
步骤S1011:创建长度为路由数量的时延数组,初始化为无穷大,表示初始时延都为无穷大。将源节点的时延设置为0,表示源节点到自身的时延为0。创建已访问集合用于记录已访问过的节点。创建长度为路由数量的前驱节点数组,初始化为-1,表示初始时每个节点的前一个节点为-1。
步骤S1012:遍历所有节点,选取未访问节点中具有最小延迟的节点,将其标记为已访问。遍历该节点的所有相邻节点,如果邻居节点未访问且通过当前节点到达邻居节点的延迟比之前记录的延迟更短,更新该邻居节点的延迟。
步骤S1013:根据前驱节点数组的信息,从目标节点开始回溯路径,将节点依次添加到路径列表中,直至回溯到源节点为止。返回路径列表,即为从源节点到目标节点的最短时延路径。
在本发明的一些实施例中,根据数据包自带截止时间计算最短时延路径上每个中继节点的截止时间偏移向量,并将截止时间偏移向量写入数据包头部信息中,具体包括:
根据最短时延路径和数据包自带截止时间,计算每个中继节点的最坏情况排队时延。
根据每个中继节点的最坏情况排队时延,结合由最短时延路径获得的链路时延和节点处理时延,计算每个中继节点的最坏情况总时延,以构造截止时间偏移向量,写入数据包头部信息中。
在本发明的一些实施例中,数据包头部信息还包括:
数据包自带截止时间、源节点地址、目标节点地址、数据包序号和数据包偏移。
在本发明的一些实施例中,根据链路负载、数据包自带截止时间和当前中继节点到目标节点的时延信息,计算数据包的丢弃概率,计算方法包括:
丢弃概率P的计算式为:
其中,Tmax表示中继节点到目标节点的最坏情况端到端时延,Tmin表示中继节点到目标节点的链路时延,ddl表示数据包自带截止时间。
给定的概率P是衡量链路的负载情况与数据包截止时间信息,距离端到端最坏情况时延的接近程度,可以较好地反映该数据包此刻的急迫程度,急迫程度较高的数据包被丢弃的概率更大。
在本发明的一些实施例中,利用基于循环队列转发模型建立的三队列循环排队转发模型,三队列循环排队在循环队列转发模型基础上增加一个缓冲队列,三队列循环排队转发模型的约束条件包括:
任一时刻只有一个队列处于发送包状态,表示为:
队列q不能同时接收和发送数据包,表示为:
任何队列从Tmin到Tmax发送的包数不超过其队列的最大长度,表示为:
任何队列的传输时延都不超过最大时延限制,表示为:
其中,Tmax表示中继节点到目标节点的最坏情况端到端时延,Tmin表示中继节点到目标节点的链路时延,为0或1变量,表示队列q中数据包在任何时候t的发送状态。0表示不发送,1表示发送,q是队列号;/>为0或1变量,表示队列q中数据包在任何时刻t的接收状态,0表示不接收,1表示接收;Lmax表示队列的最大长度;Dmax表示中继节点的最大时延约束;d表示周期时间。
在本发明的一些实施例中,最小化数据包在每个中继节点的排队时延,通过将三队列循环排队转发模型的目标函数设置为最小化排队时延获得,计算式如下:
其中,d表示周期时间,表示数据包i进入队列的时间槽t1,/>表示数据包i进入队列的时间槽t2。
本发明的一个实施例的另一个方面提供了一种基于分段路由的确定性时延路由调度系统,包括源节点、目标节点、多个中继节点、处理器和存储器,存储器中存储有计算机指令,处理器用于执行存储器中存储的计算机指令,当计算机指令被处理器执行时该系统实现如上述方法的步骤。
本发明的一个实施例的另一个方面提供了一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如上述方法的步骤。
本发明的另一个实施例提供了一种基于分段路由的确定性时延路由调度方法,该方法利用SR技术的源路由优势,源节点确定数据包的完整路径,避免不确定的网络状况对时延的影响。该方法旨在解决如何路由和调度流量以实现有界的时延和较低的丢包率,从而为时间敏感的流量提供可靠的传输服务。具体而言,该方法包含三个部分,第一是排队前依概率丢弃数据包算法,用于提高较高负载下网络的传输性能。第二是路由部分,用于计算端到端最短时延路径。第三是调度部分,采用三队列循环排队和转发模型,利用分段路由技术实现数据包的排队和转发。本方法具体包括以下内容:
假设网络G=(V,E),节点v∈V表示使能DetNet的路由器或交换机。节点之间的数据链路由(有向)链路集E∈V×V表示。每条链路e=(u,v)∈E都会产生Δe个周期的延迟,其中包括链路e的传播时延以及在节点v处的处理时延和排队时延。
一组给定的需求D,即一组时间触发的周期性流(具有可预测性),需要通过网络G进行路由调度。任意一条需求d应当定义为:
1)一个源节点vs∈V,一个目的节点vd∈V。
2)一个在每次生成数据包的循环中均可以重复的数据包到达的确定模式。在本研究中探讨的生成数据包的确定模式即为:在任意一个循环c中,需求d的源节点vs∈V发出的数据包总数为一个定值NUM∈Z+。
3)可接受的最大端到端延迟(以周期为单位),即本组数据包的截止时间的最小值,后续单个数据包的延迟约束信息将用deadline表示。
其中参数含义如下:
网络G=(V,E)中G表示拓扑,V表示网络节点,E表示有向链路,Δe表示链路e的时延(以周期为单位),vs表示需求D的源节点,vd表示需求D的目的节点,NUM表示单个循环中源节点生成的数据包总数,deadline表示需求D的延迟约束。
其中,DetNet(Deterministic Networking)是一种网络技术,旨在提供对网络中数据包传输的确定性和可预测性。DetNet通过使用时间敏感流量、低延迟和高可靠性等特性,适用于各种实时和时间敏感的应用。DetNet报文是在DetNet网络中传输的数据包。这些报文包含了用于实现确定性网络的特殊标记和头部信息,以确保其按照预定的要求进行传输。
建立模型之前确定模型假设条件:
1)网络G中的所有中继节点均具有等同的计算能力、处理能力;
2)网络G中的所有中继节点均具有完全相同的输入端口队列和输出端口队列组;
3)在任意一个循环c中,需求d的源节点vs∈V所发出的所有数据包即为一个处理批次,不同处理批次间的发包数量保持一致;
4)deadline信息在DetNet报文离开源节点之前添加在数据包的分段路由头部,表示报文必须在指定时间内到达目的节点。
5)在任意一个循环c中,每个数据包生成后,源节点v_s∈V都需要执行显式路由计算以获得合适的端到端路径。
6)简化时延模型:仅考虑链路时延,处理时延和排队时延。假设链路时延只取决于链路的距离,即一旦确定了DetNet路径,就可以认为链路延迟是常数。而处理时延与节点计算能力和负载有关,为方便处理,也将其假设为常数。排队时延是一个可以用排队理论建模的随机过程。因此,为了保证端到端确定性时延边界,需要将节点的排队时延控制在一定范围内。
模型约束条件如下:
三队列循环排队模型:该模型在CQF原有的两个队列基础上增加了一个缓冲队列Q2,可以吸收错误周期到达的流量。Q2可以不考虑时间T0或T1而接收或发送数据包。(T0表示奇数时隙;T1表示偶数时隙)。因此,该排队模型可以吸收突发流量并提供保护带宽。
单个中继节点的排队模型影响着该节点的数据包调度问题,上述排队模型的数学约束如下:
(1)任一时刻只有一个队列处于发送包状态
(2)队列q不能同时接收和发送数据包
(3)任何队列从Tmin到Tmax发送的包数不超过其队列的最大长度
(4)任何队列的传输时延都不超过最大时延限:
其中,表示0-1变量,表示队列q中数据包在任何时候t的发送状态。0表示不发送,1表示发送,q是队列号。/>表示0-1变量,表示队列q中数据包在任何时刻t的接收状态。0表示不接收,1表示接收。Lmax表示队列的最大长度。Tmin表示当前节点到目的节点的链路时延。Tmax表示当前节点到目的节点的最坏情况的端到端时延。Dmax表示单节点最大时延约束。D表示周期时间。/>表示数据包i在时间槽t1进入队列。/>表示数据包i在时间槽t2离开队列。
确定性时延网络的任务目标是保证端到端时延有界。在简化的时延模型假设前提下,只要保证排队时延有界,就可以保证端到端时延有界。那么,在排队模型建立后,只要队列的长度确定,端到端最坏情况时延也就随之确定。因此,排队模型的数学模型的目标函数设置为最小化确定性排队时延,即:
为了在网络负载较高时减少拥塞现象的发生,也为了目的节点能够有更高的数据包接收率(由于确定性时延网络对每个数据包都有严格的截止时间要求,所以超过截止时间到达目的节点的数据包也会被视为未被接收的数据包),本发明的实施例设计了排队前丢弃数据包算法,依据数据包自身所携带的截止时间信息在数据包开始参与排队前就进行概率丢包。该算法对源节点所生成的数据包的处理方式是:如果根据计算(详见算法伪代码)得知该数据包在负载较高的网络中难以按时到达目的节点,那么它将会以较高的概率被当前节点丢弃。该机制使得当前网络中其余更多数据包能够按时到达目的节点。排队前依概率丢弃数据包算法如下:
设置丢弃概率为P,即有P的概率被丢弃。设置随机值randomValue=生成0到1之间的随机数。如果randomValue<=P则数据包被丢弃,数据包未被丢弃,进行后续处理。
本发明的实施例中,路由算法包括:
以最小化端到端时延为目标,使用Dijkstra算法计算从源节点到其他节点的最短时延路径(排队时延只考虑队列现有的数据包数量)。
路由算法使用一个数组delay来记录从源节点到每个节点的最短时延。算法从源节点开始,将源节点的delay设置为0。接下来,对于每个节点,选择一个未访问的节点中具有最小延迟的节点,将其标记为已访问,并更新与该节点相邻的节点的延迟。如果通过当前节点到达某个邻居节点的延迟比原来的延迟更短,就更新该节点的延迟。算法使用prev数组来记录每个节点在最短路径中的前一个节点。在更新延迟时,如果发现通过当前节点可以获得更短的延迟,就将当前节点的前一个节点更新为新的节点。
最后,根据prev数组的信息,从目标节点开始回溯路径,并将节点依次添加到path列表中,直至回溯到源节点为止。返回的path列表就是从源节点到目标节点的最短时延路径。
本发明的实施例中,如图2所示,路由调度方法包括如下步骤S201~S204:
步骤S201:按照已知路径,根据数据包的截止时间信息,从目的节点开始向前倒推得到每个节点的最坏情况排队时延(因为链路时延和处理时延已知)。
步骤S202:计算得到每个节点上的最坏情况总时延,用于构造Segment RoutingHeader(SRH)报头中携带的截止时间偏移向量(在SR报头的保留字段中定义时延信息)。
步骤S203:节点根据截止时间偏移向量选择输出队列,弹出堆栈顶部截止时间信息。
例如,中继节点1收到带有本地截止时间堆栈(10,22,95,121)的报文,弹出堆栈顶部Td信息,表示必须确保报文在10微秒前离开节点。
步骤S204:最后一个中继节点弹出最后一个本地截止时间,确保数据包在此时间之前被传输,保证了数据包在源节点给定的截止时间之前到达最终的目的节点。
其中,SRH(Segment Routing Header)是一种网络协议中的头部扩展,是分段路由(Segment Routing)的一部分,旨在提高网络灵活性和可管理性。SRH允许定义网络中的路径,通过在数据包头部中的多个段(segments)来实现。SRH通过将服务链信息嵌入到SRH中,可以轻松配置数据包通过一系列网络服务节点的顺序。
本发明的实施例考虑到了链路高负载情形,在链路负载达到0.9以上时启用排队前依概率丢弃数据包算法,提高了时间敏感型流量的接收率。最短时延路径算法仅在源节点规划路由,并考虑中继路由器/交换机中处于排队状态的数据包数量进行负载均衡路由,解决了源节点仅算路一次以至于生成大量数据包时丢包率较高的问题。调度阶段在SR报头的保留字段中定义时延(Td),并将时延(Td)信息携带在可选类型/长度/值(Type/Length/Value,TLV)对象中,以保证报文在相应时间之前到达下一个节点。每个节点的调度算法也封装在帧结构中作为Service SID,当节点读取SRH信息时,在相应节点触发其调度算法。
综上所述,本发明提供一种基于分段路由的确定性时延路由调度方法和系统,该方法包括:获取数据包并计算源节点到目标节点的最短时延路径。计算最短时延路径上每个中继节点的截止时间偏移向量,并将其写入数据包头部信息中。沿最短时延路径传输数据包,在中继节点排队前,计算数据包的丢弃概率,若概率高于随机生成数则在当前节点丢弃数据包。利用循环队列转发模型建立的三队列循环排队转发模型,计算数据包在每个中继节点应排入的队列,以最小化数据包在每个中继节点的排队时延。设定每个中继节点在其对应的截止时间偏移向量之前传输数据包。本发明能够满足确定性时延网络路由调度对低延迟和负载均衡的传输需求。
与上述方法相应地,本发明还提供了一种系统,该系统包括计算机设备,所述计算机设备包括处理器和存储器,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该系统实现如前所述方法的步骤。
本发明实施例还提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时以实现前述边缘计算服务器部署方法的步骤。该计算机可读存储介质可以是有形存储介质,诸如随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、软盘、硬盘、可移动存储盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质。
本领域普通技术人员应该可以明白,结合本文中所公开的实施方式描述的各示例性的组成部分、系统和方法,能够以硬件、软件或者二者的结合来实现。具体究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。
需要明确的是,本发明并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本发明的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本发明的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
本发明中,针对一个实施方式描述和/或例示的特征,可以在一个或更多个其它实施方式中以相同方式或以类似方式使用,和/或与其他实施方式的特征相结合或代替其他实施方式的特征。
以上所述仅为本发明的优选实施例,并不用于限制本发明,对于本领域的技术人员来说,本发明实施例可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (10)
1.一种基于分段路由的确定性时延路由调度方法,其特征在于,该方法包括以下步骤:
获取数据包,计算源节点到目标节点的最短时延路径,根据所述数据包自带截止时间计算所述最短时延路径上每个中继节点的截止时间偏移向量,并将所述截止时间偏移向量写入所述数据包头部信息中;
沿所述最短时延路径传输数据包,所述数据包在所述中继节点排队前,当链路负载超过设定值,根据链路负载、所述数据包自带截止时间和当前中继节点到所述目标节点的时延信息,计算所述数据包的丢弃概率,若所述丢弃概率高于随机生成数则在当前节点丢弃数据包;
利用基于循环队列转发模型建立的三队列循环排队转发模型,计算所述数据包在每个中继节点应排入的队列,以最小化所述数据包在每个中继节点的排队时延;
设定每个中继节点在该中继节点对应的截止时间偏移向量之前传输数据包。
2.根据权利要求1所述基于分段路由的确定性时延路由调度方法,其特征在于,所述计算源节点到目标节点的最短时延路径,所述最短时延路径取决于路径上的链路时延,所述链路时延取决于链路的距离。
3.根据权利要求2所述基于分段路由的确定性时延路由调度方法,其特征在于,所述计算源节点到目标节点的最短时延路径的算法包括:
基于Dijkstra算法,遍历所有节点并更新所有节点之间的时延,计算所述源节点到所述目标节点的所述最短时延路径。
4.根据权利要求1所述基于分段路由的确定性时延路由调度方法,其特征在于,根据所述数据包自带截止时间计算所述最短时延路径上每个中继节点的截止时间偏移向量,并将所述截止时间偏移向量写入所述数据包头部信息中,具体包括:
根据所述最短时延路径和所述数据包自带截止时间,计算每个中继节点的最坏情况排队时延;
根据每个中继节点的最坏情况排队时延,结合由所述最短时延路径获得的链路时延和节点处理时延,计算每个中继节点的最坏情况总时延,以构造所述截止时间偏移向量,写入所述数据包头部信息中。
5.根据权利要求1所述基于分段路由的确定性时延路由调度方法,其特征在于,所述数据包头部信息还包括:
所述数据包自带截止时间、所述源节点地址、所述目标节点地址、所述数据包序号和所述数据包偏移。
6.根据权利要求1所述的基于分段路由的确定性时延路由调度方法,其特征在于,根据链路负载、所述数据包自带截止时间和当前中继节点到所述目标节点的时延信息,计算所述数据包的丢弃概率,计算方法包括:
所述丢弃概率P的计算式为:
其中,Tmax表示所述中继节点到所述目标节点的最坏情况端到端时延,Tmin表示所述中继节点到所述目标节点的链路时延,ddl表示所述数据包自带截止时间。
7.根据权利要求1所述基于分段路由的确定性时延路由调度方法,其特征在于,利用基于循环队列转发模型建立的三队列循环排队转发模型,所述三队列循环排队在循环队列转发模型基础上增加一个缓冲队列,所述三队列循环排队转发模型的约束条件包括:
任一时刻只有一个队列处于发送包状态,表示为:
队列q不能同时接收和发送数据包,表示为:
任何队列从Tmin到Tmax发送的包数不超过其队列的最大长度,表示为
任何队列的传输时延都不超过最大时延限制,表示为:
其中,Tmax表示所述中继节点到所述目标节点的最坏情况端到端时延,Tmin表示所述中继节点到所述目标节点的链路时延,为0或1变量,表示队列q中数据包在任何时候t的发送状态。0表示不发送,1表示发送,q是队列号;/>为0或1变量,表示队列q中数据包在任何时刻t的接收状态,0表示不接收,1表示接收;Lmax表示队列的最大长度;Dmax所述中继节点的最大时延约束;d表示周期时间。
8.根据权利要求7所述基于分段路由的确定性时延路由调度方法,其特征在于,所述最小化所述数据包在每个中继节点的排队时延,通过将所述三队列循环排队转发模型的目标函数设置为最小化排队时延获得,计算式如下:
其中,d表示周期时间,表示数据包i进入队列的时间槽t1,/>表示数据包i进入队列的时间槽t2。
9.一种基于分段路由的确定性时延路由调度系统,包括源节点、目标节点、多个中继节点、处理器和存储器,其特征在于,所述存储器中存储有计算机指令,所述处理器用于执行所述存储器中存储的计算机指令,当所述计算机指令被处理器执行时该系统实现如权利要求1至8中任一项所述方法的步骤。
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至8中任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311635255.0A CN117714368A (zh) | 2023-11-30 | 2023-11-30 | 一种基于分段路由的确定性时延路由调度方法和系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311635255.0A CN117714368A (zh) | 2023-11-30 | 2023-11-30 | 一种基于分段路由的确定性时延路由调度方法和系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117714368A true CN117714368A (zh) | 2024-03-15 |
Family
ID=90159810
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311635255.0A Pending CN117714368A (zh) | 2023-11-30 | 2023-11-30 | 一种基于分段路由的确定性时延路由调度方法和系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117714368A (zh) |
-
2023
- 2023-11-30 CN CN202311635255.0A patent/CN117714368A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
WO2019184925A1 (zh) | 一种报文发送的方法、网络节点和系统 | |
WO2019214561A1 (zh) | 一种报文发送的方法、网络节点和系统 | |
CN113382442A (zh) | 报文传输方法、装置、网络节点及存储介质 | |
US11362959B2 (en) | Latency based forwarding of packets with destination policies | |
CN113498106A (zh) | 一种时间敏感网络tsn流的调度方法及装置 | |
Ghaffari et al. | Energy-efficient and QoS-aware geographic routing protocol for wireless sensor networks | |
US20220150159A1 (en) | Control device, switch device and methods | |
Jose et al. | A distributed algorithm to calculate max-min fair rates without per-flow state | |
US11943046B2 (en) | Method to configure real-time communications in a network with time-triggered and rate-constrained traffic | |
CN114884557B (zh) | 一种基于网络演算的卫星时间敏感网络路径选择方法 | |
WO2020191014A1 (en) | Latency based forwarding of packets with dynamic priority destination policies | |
CN114449586A (zh) | 一种通信调度方法、装置和存储介质 | |
CN108282416B (zh) | 一种基于数据帧的调度方法和装置 | |
CN115037399A (zh) | 报文转发方法、电子设备和存储介质 | |
US8929216B2 (en) | Packet scheduling method and apparatus based on fair bandwidth allocation | |
JP5087595B2 (ja) | エッジノード、ウィンドウサイズ制御方法およびプログラム | |
Chiariotti et al. | Age of information in multihop connections with tributary traffic and no preemption | |
CN117714368A (zh) | 一种基于分段路由的确定性时延路由调度方法和系统 | |
Tseng et al. | Trading throughput for freshness: Freshness-aware traffic engineering and in-network freshness control | |
CN102497325B (zh) | 基于可靠信息分发的容延容断网络路由方法 | |
Cheng et al. | Joint Time-Frequency Resource Scheduling Over CQF-Based TSN-5G System | |
CN114650566A (zh) | 一种提供确定性服务质量的边缘计算网络架构 | |
JP6633502B2 (ja) | 通信装置 | |
CN114338545A (zh) | 流量整形方法及装置 | |
Liu et al. | A framework of joint scheduling and network coding for real-time traffic with diverse delay constraints |
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 |