CN113315668B - 自适应调整网络组态的方法、节点设备和存储介质 - Google Patents

自适应调整网络组态的方法、节点设备和存储介质 Download PDF

Info

Publication number
CN113315668B
CN113315668B CN202110853606.XA CN202110853606A CN113315668B CN 113315668 B CN113315668 B CN 113315668B CN 202110853606 A CN202110853606 A CN 202110853606A CN 113315668 B CN113315668 B CN 113315668B
Authority
CN
China
Prior art keywords
message
periodic
time
packet
gap
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
Application number
CN202110853606.XA
Other languages
English (en)
Other versions
CN113315668A (zh
Inventor
陈建飞
苏梦鸻
李红波
王迎
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhejiang Guoli Xin'an Technology Co ltd
Original Assignee
Zhejiang Guoli Xin'an Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhejiang Guoli Xin'an Technology Co ltd filed Critical Zhejiang Guoli Xin'an Technology Co ltd
Priority to CN202110853606.XA priority Critical patent/CN113315668B/zh
Publication of CN113315668A publication Critical patent/CN113315668A/zh
Application granted granted Critical
Publication of CN113315668B publication Critical patent/CN113315668B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0803Configuration setting

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明提供了一种自适应调整网络组态的方法、节点设备和计算机可读存储介质。该方法包括:在多个节点设备的通信周期的周期时间段期间,多个节点设备中的一个节点设备监听多个节点设备的多个周期报文;从多个周期报文中确定第一周期报文和第二周期报文;分别基于第一周期报文和第二周期报文在节点设备的收发时刻确定周期报文与第一周期报文之间的第一报文间隙和周期报文与第二周期报文之间的第二报文间隙;基于节点设备的周期报文调整量、第一报文间隙和第二报文间隙调整节点设备的周期报文的发送时刻以获得调整后的周期报文发送时刻;以及向多个节点设备中的其他节点设备发送周期时间调整报文。

Description

自适应调整网络组态的方法、节点设备和存储介质
技术领域
本发明概括而言涉及通信领域,更具体地,涉及一种自适应调整网络组态的方法、节点设备和计算机可读存储介质。
背景技术
在工控领域中,网络组态是指网络的各种配置。当前,网络通常采用令牌、轮询、时分复用等方式控制各个组成部分进行数据通信。例如,令牌协议要求存在一个令牌管理节点负责令牌的产生与分发,当令牌发送后没有节点持有令牌时,系统需要等待超时,由令牌管理节点重新生成令牌。在这种控制方式中,系统需要花费大量时间用于令牌发送和令牌等待,总线利用率较低。当系统中需要上线新的节点或者已有节点的报文数据长度需要更改时,往往需要停止系统工作,人工重新配置网络组态,过程复杂且耗时漫长。
此外,在一些网络自组网方法中,通常采用主节点或监视节点向新上线的设备分配周期时间段内的时间片以用于该新设备发送其周期报文。这种自组网方法抗干扰性差,如果主节点或监视节点损坏则将丧失自组网功能,并且这种自组网方式不支持已工作的节点动态更改周期数据长度。
发明内容
针对上述问题中的至少一个,本发明提供了一种自适应调整网络组态的方案,其中网络中已有的节点设备可以通过监听网络中的各个节点设备的周期报文来自适应地对其自身的周期报文的长度进行调整。
根据本发明的一个方面,提供了一种自适应调整网络组态的方法。所述网络包括多个节点设备。所述方法包括:在所述多个节点设备的通信周期的周期时间段期间,所述多个节点设备中的一个节点设备监听所述多个节点设备的多个周期报文;从所述多个周期报文中确定第一周期报文和第二周期报文,其中所述第一周期报文是所述节点设备的周期报文的前一周期报文,所述第二周期报文是所述节点设备的周期报文的后一周期报文;分别基于所述第一周期报文和所述第二周期报文在所述节点设备的收发时刻确定所述周期报文与所述第一周期报文之间的第一报文间隙和所述周期报文与所述第二周期报文之间的第二报文间隙;基于所述节点设备的周期报文调整量、所述第一报文间隙和所述第二报文间隙调整所述节点设备的周期报文的发送时刻以获得调整后的周期报文发送时刻;以及向所述多个节点设备中的其他节点设备发送周期时间调整报文,所述周期时间调整报文包括所述节点设备的调整后的周期报文发送时刻和周期报文截止时刻或者调整后的周期报文长度。
在一些实施例中,确定所述第一报文间隙包括:基于所述节点设备接收所述第一周期报文的第一接收时刻、转发所述第一周期报文的第一转发延时、发送所述节点设备的周期报文的发送时刻和所述第一周期报文的报文长度确定所述第一报文间隙。确定所述第二报文间隙包括:基于所述节点设备接收所述第二周期报文的第二接收时刻、接收所述节点设备的周期报文的接收时刻和所述周期报文的报文长度确定所述第二报文间隙。
在一些实施例中,调整所述节点设备的周期报文的发送时刻以获得调整后的周期报文发送时刻包括:确定所述第一报文间隙和所述第二报文间隙是否满足所述节点设备的周期报文调整量;响应于确定所述第一报文间隙和所述第二报文间隙满足所述节点设备的周期报文调整量,调整所述节点设备的周期报文的发送时刻以获得调整后的周期报文发送时刻;以及响应于确定所述第一报文间隙和所述第二报文间隙不满足所述节点设备的周期报文调整量,调整所述节点设备的周期报文的发送时刻以获得调整后的周期报文发送时刻,并且产生所述周期时间调整报文。
在一些实施例中,调整所述节点设备的周期报文的发送时刻包括:确定所述周期报文调整量是否小于所述第一报文间隙;响应于确定所述周期报文调整量小于所述第一报文间隙,将所述节点设备的周期报文的发送时刻提前所述周期报文调整量以获得所述调整后的周期报文发送时刻;响应于确定所述周期报文调整量大于或等于所述第一报文间隙,确定所述周期报文调整量是否小于所述第一报文间隙和所述第二报文间隙之和;以及响应于确定所述周期报文调整量小于所述第一报文间隙和所述第二报文间隙之和,确定所述调整后的周期报文发送时刻的范围,并且选择所述范围内的任意时刻作为所述调整后的周期报文发送时刻。
在一些实施例中,调整所述节点设备的周期报文的发送时刻包括:确定所述周期报文调整量是否小于所述第二报文间隙;响应于确定所述周期报文调整量小于所述第二报文间隙,使得所述调整后的周期报文发送时刻等于所述周期报文的发送时刻并且将所述节点设备的周期报文的截止时刻延后所述周期报文调整量;响应于确定所述周期报文调整量大于或等于所述第二报文间隙,确定所述周期报文调整量是否小于所述第一报文间隙和所述第二报文间隙之和;以及响应于确定所述周期报文调整量小于所述第一报文间隙和所述第二报文间隙之和,确定所述调整后的周期报文发送时刻的范围,并且选择所述范围内的任意时刻作为所述调整后的周期报文发送时刻。
在一些实施例中,该方法还包括:确定所述周期时间段是否包含空闲时间片;响应于确定所述周期时间段包含空闲时间片,确定所述空闲时间片是否大于或等于所述节点设备的周期报文调整量与所述第一报文间隙和所述第二报文间隙之差;响应于确定所述周期时间段不包含空闲时间片,或者响应于确定所述空闲时间片小于所述节点设备的周期报文调整量与所述第一报文间隙和所述第二报文间隙之差,确定周期时间调整量,所述周期时间调整量大于或等于所述节点设备的周期报文调整量与所述第一报文间隙和所述第二报文间隙之差;以及向所述多个节点设备中的其他节点设备发送所述周期时间调整量。
在一些实施例中,该方法还包括:确定是否接收到所述网络中的其他节点设备的周期时间调整报文;响应于确定接收到其他节点设备的周期时间调整报文,确定所述其他节点设备的周期时间报文中所声明的周期报文发送时刻和周期报文截止时刻是否与所述节点设备的调整后的周期报文发送时刻和周期报文截止时刻冲突;响应于确定所述其他节点设备的周期时间报文中所声明的周期报文发送时刻和周期报文截止时刻与所述节点设备的调整后的周期报文发送时刻和周期报文截止时刻冲突,确定所述其他节点设备的优先级是否高于所述节点设备;以及响应于确定所述其他节点设备的优先级高于所述节点设备,放弃调整其周期报文发送时刻。
根据本发明的另一个方面,提供了一种节点设备,包括:处理器和存储器,所述存储器包括可由所述处理器运行的指令,所述处理器被配置为使得所述节点设备执行如上所述的任一方法。
根据本发明的另一个方面,提供了一种计算机可读存储介质,其上存储有计算机程序代码,该计算机程序代码在被运行时执行如上所述的方法。
附图说明
通过参考下列附图所给出的本发明的具体实施方式的描述,将更好地理解本发明,并且本发明的其他目的、细节、特点和优点将变得更加显而易见。
图1示出了根据本发明的实施例的示例性网络的示意图。
图2示出了根据本发明实施例的网络的通信周期的示意图。
图3示出了根据本发明的一些实施例的自适应调整网络组态的方法的流程图。
图4示出了根据本发明实施例的网络中的多个节点设备的周期报文的收发时序图。
图5A示出了图4所示的各个周期报文的收发时序图的简化图。
图5B示出了根据本发明实施例的节点设备的调整后的周期报文的收发时序图。
图6示出了根据本发明一些实施例的调整节点设备的周期报文的发送时刻的步骤的流程图。
图7示出了适合实现本公开的实施例的节点设备的方框图。
具体实施方式
下面将参照附图更详细地描述本发明的优选实施方式。虽然附图中显示了本发明的优选实施方式,然而应该理解,可以以各种形式实现本发明而不应被这里阐述的实施方式所限制。相反,提供这些实施方式是为了使本发明更加透彻和完整,并且能够将本发明的范围完整的传达给本领域的技术人员。
在下文的描述中,出于说明各种发明的实施例的目的阐述了某些具体细节以提供对各种发明实施例的透彻理解。但是,相关领域技术人员将认识到可在无这些具体细节中的一个或多个细节的情况来实践实施例。在其它情形下,与本申请相关联的熟知的装置、结构和技术可能并未详细地示出或描述从而避免不必要地混淆实施例的描述。
除非语境有其它需要,在整个说明书和权利要求中,词语“包括”和其变型,诸如“包含”和“具有”应被理解为开放的、包含的含义,即应解释为“包括,但不限于”。
在整个说明书中对“一个实施例”或“一些实施例”的提及表示结合实施例所描述的特定特点、结构或特征包括于至少一个实施例中。因此,在整个说明书的各个位置“在一个实施例中”或“在一些实施例”中的出现不一定全都指相同实施例。另外,特定特点、结构或特征可在一个或多个实施例中以任何方式组合。
此外,说明书和权利要求中所用的第一、第二、第三等术语,仅仅出于描述清楚起见来区分各个对象,而并不限定其所描述的对象的大小或其他顺序等,除非另有说明。
在诸如EPA(Ethernet for Plant Automation,工业以太网)系统(也称为EPA网络)的时分复用网络中,网络的各个节点设备采用时分复用的方式进行周期式通信,即确定工作在同一个时间基准的前提下,根据系统具体应用场景来制定一个指定时间长度的通信周期,也称为宏周期,系统中的所有节点设备的通信周期的起始与结束时间一致。一个通信周期可以划分为多个时间片或时隙,系统中的每个节点设备可以占用一个或若干个时间片以进行通信。通常,一个通信周期可以被分为周期时间段和非周期时间段,其中周期时间段可以用来传输每个节点设备的周期数据(即固定频率的周期性发送的数据),而非周期时间段可以被各个节点设备声明以发送一些突发数据或者发送系统自身产生的系统报文。
图1示出了根据本发明的实施例的示例性网络100的示意图。如图1中所示,网络100包括多个节点设备(图1中示意性地示出了4个节点设备10、20、30和40),其中相邻节点设备之间通过链路首尾相连。每个节点设备具有一个或多个发送端口(图1中示例性地为每个节点设备示出了一个发送端口,即发送端口10A、20A、30A和40A)和一个或多个接收端口(图1中示例性地为每个节点设备示出了一个接收端口,即接收端口10B、20B、30B和40B)。
注意,图1中以环型拓扑结构为例示出了网络100,但是本领域技术人员可以理解,网络100并不限于图1所示的环型拓扑结构,而是可以具有其他类型的拓扑结构,如线型结构、混合型结构等。
在网络100中,各个节点设备共享同一主时钟,具有相同的时钟基准。这些节点设备之间的通信周期具有相同的周期性。图2示出了根据本发明实施例的网络100的通信周期T的示意图。如图2中所示,每个通信周期T可以包括周期时间段Tp和非周期时间段Tn。
每个通信周期T的周期时间段Tp用于每个节点设备发送周期报文。其中,在给定的通信模式下,为网络100中的每个节点设备分配了周期时间段Tp期间的固定的传输时间片以发送该节点设备的周期报文,该传输时间片的开始时间和长度(或者截止时间)对于每个节点设备是唯一的,不会与其他节点设备产生重叠和冲突。周期时间段Tp主要用来传输指定类型的大数据或特定类型的报文数据,其是主要的数据传输时间。在本文中,假设各个节点设备按照图1中所示的节点设备10→节点设备20→节点设备30→节点设备40的顺序依次发送各自的周期报文P10、P20、P30和P40,并且各个周期报文在网络100中为单向传输,即,每个周期报文依次经过一个节点设备的接收端口接收,然后通过该节点设备的发送端口转发给下一节点设备。
通信周期T的非周期时间段Tn是所有节点设备共用的时间段,其可以由每个节点设备根据实际需要声明不同的传输时间片(例如在周期时间段Tp的周期报文中声明),例如声明不同的传输开始时间点和/或时长等。在非周期时间段Tn期间,所有节点设备的传输时间片仍然不能重叠。这样,在非周期时间段Tn,每个节点设备可以用来发送不等长的各种控制报文或少数关键信息。
在本文中,当网络100中的一个节点设备想要修改自己在周期时间段中传输的周期报文的长度(即传输时间片的长度)时,其可以自发地对网络100中的其他节点设备的周期报文进行监听以自适应地调整其周期报文的传输时间片,而不需要单独的令牌管理节点、主时钟节点或者监视节点来主动发起该调整。
图3示出了根据本发明的一些实施例的自适应调整网络组态的方法300的流程图。方法300例如可以由图1中所示的网络100中的任一节点设备来实现。以下以节点设备20为例对方法300进行描述。当节点设备20想要调整其周期报文的长度时,可以开始执行方法300。
在步骤310,在一个通信周期T的周期时间段Tp期间,节点设备20监听网络100中的多个节点设备的多个周期报文。
图4示出了根据本发明实施例的网络100中的多个节点设备的周期报文的收发时序图。如图4中所示,对于每个节点设备来说,其通过其发送端口发送或转发的每个周期报文,在经过一定路径延时之后到达下一节点设备的接收端口,在下一节点设备中经过一定转发延时之后,该周期报文被下一节点设备的发送端口转发给再下一个节点设备。例如,对于节点设备10的周期报文P10,假设其在时刻t0开始通过节点设备10的发送端口10A向下一节点设备20发送。在经过发送端口10A到接收端口20B之间的路径延时Δp之后,节点设备20的接收端口20B在时刻t1开始接收该周期报文P10,并且在经过该节点设备20的转发延时Δf之后,在时刻t2开始通过发送端口20A向下一节点设备30转发,并且在时刻t3,发送端口20A结束对于周期报文P20的转发。对于节点设备20的周期报文P20,假设其在一个报文发送间隔ΔI1之后的时刻t4开始通过节点设备20的发送端口20A向下一节点设备30发送。在经过发送端口20A到接收端口30B之间的路径延时Δp之后,节点设备30的接收端口30B在时刻t5开始接收该周期报文P20,并且在经过该节点设备30的转发延时Δf之后,在时刻t6开始通过发送端口30A向下一节点设备40转发,并且在时刻t7,发送端口30A结束对于周期报文P20的转发。依次类推。
另一方面,周期报文P20在依次经过节点设备30、40和10的转发之后,在时刻t8,节点设备20的接收端口20B开始接收该周期报文P20,并在时刻t9结束接收。经过一个报文接收间隔ΔI2之后的时刻t10,节点设备20的接收端口20B开始接收节点设备30的周期报文P30。
这里,每个节点设备能够直接确定其接收到每个周期报文的时刻和其自身的转发延时Δf,并且可以从每个周期报文中提取出该周期报文的长度(数据长度可以换算为相应的时间长度,以下直接以时间长度来表示该周期报文的长度)。基于上述信息,可以确定报文发送间隔和报文接收间隔,如下所述。此外,图4中示意性地将各个节点设备之间的路径延时Δp都显示为相同大小,并且将各个节点设备的转发延时Δf都显示为相同大小,但是本领域技术人员可以理解,图4中所显示的仅仅是示意性地,在实际的网络100中,各个节点设备之间的路径延时和/或各个节点设备的转发延时通常各不相同。
在一些实施例中,节点设备20可以监听网络100的多个通信周期T,以获得如图4中所示的周期报文的收发时序图。通过这种方式,可以确保不会遗漏任何节点设备的周期报文并且可以排除突发的报文收发紊乱。
如前所述,在节点设备20想要调整其周期报文的长度时,其可以发起执行方法300。具体地,在本发明中,节点设备20可以确定其周期报文的前后可用间隙以确定该前后可用间隙是否能够满足节点设备20的周期报文调整量。
继续图3,在步骤320,节点设备20可以从多个周期报文中确定第一周期报文和第二周期报文。其中第一周期报文是节点设备20的周期报文P20的前一周期报文,第二周期报文是节点设备20的周期报文P20的后一周期报文。
具体地,在一些实施例中,节点设备20可以在每次接收到一个周期报文时,从该周期报文中提取该周期报文的数据长度并且打上接收时间戳(如图4所示的接收到周期报文P10的时刻t1、接收到周期报文P20的时刻t8、接收到周期报文P30的时刻t10等)。节点设备20可以基于其自身的转发延时推测转发该周期报文的开始时间戳和截止时间戳(如图4所示的转发周期报文P10的开始时刻t2和截止时刻t3等),从而根据收发周期报文的这些时间戳信息确定接收到的周期报文和节点设备20自身的周期报文P20之间的前后顺序关系,从而确定其前一周期报文和后一周期报文。如图4中所示,假设节点设备20确定其周期报文P20的前一周期报文(第一周期报文)为节点设备10的周期报文P10,其周期报文P20的后一周期报文(第二周期报文)为节点设备30的周期报文P30。
在步骤330,节点设备20可以分别基于第一周期报文P10和第二周期报文P30在该节点设备20的收发时刻确定其周期报文P20与第一周期报文P10之间的第一报文间隙和其周期报文P20与第二周期报文P30之间的第二报文间隙。这里,确定第一报文间隙和第二报文间隙的目的是确定它们是否可用于节点设备20发送其调整后(即增长的)周期报文,因此,第一报文间隙应当是节点设备20的发送端口20A转发第一周期报文P10的截止时刻与发送周期报文P20的开始时刻之间的时间间隔(即上文所述的报文发送间隔ΔI1),第二报文间隙应当是节点设备20的接收端口20B接收周期报文P20的截止时刻与接收第二周期报文P30的开始时刻之间的时间间隔(即上文所述的报文接收间隔ΔI2)。
图5A示出了图4所示的各个周期报文的收发时序图的简化图,其中,与图4相比,图5A仅仅着重示出了周期报文P20与其前一周期报文P10和后一周期报文P30之间的收发时序。
具体地,在一种实施例中,节点设备20可以基于其接收第一周期报文P10的第一接收时刻T0(例如图4中所示的时刻t0)、转发第一周期报文P10的第一转发延时T2(例如图4中所示的转发延时Δf)、发送节点设备20的周期报文P20的发送时刻T4(例如图4中所示的时刻t4)和第一周期报文P10的报文长度T1确定第一报文间隙T3。如图5A中所示,第一报文间隙T3可以表示为:
T3=T4-T0-T1-T2。
在一种实施例中,节点设备20可以基于节点设备20接收第二周期报文P30的第二接收时刻T7(例如图4中所示的时刻t10)、接收节点设备20的周期报文P20的接收时刻T5(例如图4中所示的时刻t8)和周期报文P20的报文长度T6确定第二报文间隙T8。如图5A中所示,第二报文间隙T8可以表示为:
T8=T7-T5-T6。
在一些其他实施例中,节点设备20可以通过其他方式确定第一报文间隙T3和/或第二报文间隙T8。例如,在节点设备20能够直接确定并标记发送/转发每个周期报文的开始时刻和截止时刻(例如能够直接标记图4中所示的时刻t0至t10)的情况下,节点设备20能够更容易地确定第一报文间隙T3=t4-t3,第二报文间隙T8=t10-t9。
此外,在一些实施例中,在步骤330,节点设备20还可以确定其周期报文P20是否是当前通信周期T的周期时间段Tp的最后一个周期报文。如果其周期报文P20是当前通信周期T的周期时间段Tp的最后一个周期报文(即不存在上述第二周期报文),节点设备20可以基于通信周期T的周期时间段Tp的截止时刻T7'(图中未示出)、接收节点设备20的周期报文P20的接收时刻T5(例如图4中所示的时刻t8)和周期报文P20的报文长度T6确定第二报文间隙T8。第二报文间隙T8可以表示为:
T8=T7'-T5-T6。
通过这种方式,节点设备20可以确定其周期报文P20的前后可用间隙,即第一报文间隙T3和第二报文间隙T8,并且能够进一步确定该前后可用间隙是否能够满足节点设备20的周期报文调整量,从而对节点设备20的周期报文的收发时刻进行调整。
为此,在步骤340,节点设备20可以基于节点设备20的周期报文调整量、第一报文间隙T3和第二报文间隙T8调整该节点设备20的周期报文P20的发送时刻T4以获得调整后的周期报文发送时刻T4'。
图5B示出了根据本发明实施例的节点设备20的调整后的周期报文P20的收发时序图。如图5B中所示,假设与图5A中所示的报文长度T6相比,节点设备20的周期报文P20的长度需要增加ΔT,即节点设备20的周期报文调整量为ΔT,从而调整后的周期报文P20的长度为T6'=T6+ΔT,因此在步骤340中,需要相应地调整新的周期报文P20的发送时刻,将其调整后的发送时刻记为T4'。
取决于节点设备20的周期报文调整量ΔT、第一报文间隙T3和第二报文间隙T8的大小,周期报文P20的发送时刻可以有不同的调整方法。
图6示出了根据本发明一些实施例的调整节点设备20的周期报文P20的发送时刻T4的步骤340的流程图。
如图6中所示,步骤340可以包括子步骤342,其中节点设备20可以确定第一报文间隙T3和第二报文间隙T8是否满足节点设备20的周期报文调整量ΔT。如前所述,第一报文间隙T3和第二报文间隙T8可以提供节点设备20的周期报文的前后可用间隙,因此总可用间隙可以表示为T3+T8,然后可以确定节点设备20的周期报文调整量ΔT与T3+T8的大小关系。
如果确定第一报文间隙T3和第二报文间隙T8满足节点设备20的周期报文调整量ΔT,即T3+T8≤ΔT,则在子步骤344,节点设备20可以直接调整其周期报文的发送时刻T4以获得调整后的周期报文发送时刻T4'。也就是说,在这种情况下,节点设备20自身的前后可用间隙足够节点设备20来调整其周期报文的长度,因此其可以直接对其周期报文的发送时刻进行调整,其他节点设备可以通过检测接收到的周期报文中的地址信息来确定接收到该节点设备20的周期报文,并且基于该周期报文的其他信息(如数据负载信息)确定该周期报文的长度被调整,并且无需对各自的周期报文的发送时刻进行调整。
另一方面,如果确定第一报文间隙T3和第二报文间隙T8不满足节点设备20的周期报文调整量ΔT,即T3+T8>ΔT,则在子步骤346,节点设备20除了调整其周期报文的发送时刻T4以获得调整后的周期报文发送时刻T4'之外还可以产生一个周期时间调整报文。该周期时间调整报文可以包括节点设备20的调整后的周期报文发送时刻T4',还可以包括调整后的周期报文截止时刻或者调整后的周期报文长度。接收到该周期时间调整报文并且发送周期报文的顺序在节点设备20之后的其他节点设备可以根据该周期时间调整报文调整各自的周期报文的发送时刻。也就是说,在这种情况下,节点设备20自身的前后可用间隙已经不够节点设备20来调整其周期报文的长度,必须占用其后的其他节点设备原有的周期报文发送时间,从而其后的其他节点设备应当对各自的周期报文的发送时刻进行相应的调整。
在本发明中,在子步骤344中确定节点设备20的调整后的周期报文的发送时刻T4'可以通过多种方式进行。
在一些实施例中,节点设备20可以确定周期报文调整量ΔT是否小于第一报文间隙T3。如果确定周期报文调整量ΔT小于第一报文间隙T3,节点设备20可以将其周期报文的发送时刻T4提前该周期报文调整量ΔT以获得调整后的周期报文发送时刻T4'。即,T4'=T4-ΔT。也就是说,如果第一报文间隙T3已经足够节点设备20调整其周期报文的长度,则节点设备20可以将其周期报文的发送时刻前移ΔT而不影响其发送截止时刻。
另一方面,如果确定周期报文调整量ΔT大于或等于第一报文间隙T3,则节点设备20可以进一步确定周期报文调整量ΔT是否小于第一报文间隙T3和第二报文间隙T8之和。如果确定周期报文调整量ΔT小于第一报文间隙T3和第二报文间隙T8之和,则节点设备20可以确定调整后的周期报文发送时刻T4'的范围并且选择该范围内的任意时刻作为调整后的周期报文发送时刻T4'。具体地,该范围可以表示为[T4-T3, T4-(ΔT- T8)]。也就是说,在这种情况下,第一报文间隙T3和第二报文间隙T8之和满足节点设备20的周期报文调整量ΔT,则节点设备20的周期报文可以在基于该前后可用间隙计算出的范围中的任意时刻开始发送。
与上述实施例类似地,在另一些实施例中,节点设备20可以确定周期报文调整量ΔT是否小于第二报文间隙T8。如果确定周期报文调整量ΔT小于第二报文间隙T8,节点设备20可以保持其周期报文的发送时刻不变而将其周期报文的截止时刻延后该周期报文调整量ΔT。即,T4'=T4。也就是说,如果第二报文间隙T8已经足够节点设备20调整其周期报文的长度,则节点设备20可以将其周期报文的截止时刻后移ΔT而不影响其发送时刻。
另一方面,与上述实施例类似地,如果确定周期报文调整量ΔT大于或等于第二报文间隙T8,节点设备20可以进一步确定该周期报文调整量ΔT是否小于第一报文间隙T3和第二报文间隙T8之和。如果确定该周期报文调整量ΔT小于第一报文间隙T3和第二报文间隙T8之和,则节点设备20可以类似地确定调整后的周期报文发送时刻T4'的范围并且选择该范围内的任意时刻作为调整后的周期报文发送时刻T4'。具体地,该范围可以表示为[T4-T3, T4-(ΔT- T8)]。
如果确定该周期报文调整量ΔT大于或等于第一报文间隙T3和第二报文间隙T8之和,则节点设备20可以将该调整后的周期报文发送时刻T4'相对于发送时刻T4前移T3,即T4'=T4-T3,并且确定调整后的周期报文截止时刻或者调整后的周期报文长度。
继续图3,在步骤350,节点设备20可以向网络100中的多个节点设备中的其他节点设备发送上述周期时间调整报文。注意,虽然在上述结合图6的实施例的描述中,将步骤340描述为仅在确定第一报文间隙T3和第二报文间隙T8不满足节点设备20的周期报文调整量ΔT时在子步骤346中产生周期时间调整报文,但是本领域技术人员可以理解,在子步骤344中可以类似地产生周期时间调整报文,以使得其他节点设备能够预先得知该节点设备20的周期报文的调整。
如上所述,在确定第一报文间隙T3和第二报文间隙T8不满足节点设备20的周期报文调整量ΔT时,节点设备20可以将其调整后的周期报文发送时刻发送给其他节点设备以使得节点设备20之后的其他节点设备能够相应地调整其周期报文的发送时刻。
在一些情况下,当前的通信周期T的周期时间段Tp中仍然有空闲时间片,并且该空闲时间片可以使得所有需要调整周期报文发送时刻的节点设备的调整后的周期报文都能够在该周期时间段Tp中发送。在这种情况下,可以不对通信周期T或其周期时间段Tp进行调整。
在另一些情况下,当前的通信周期T的周期时间段Tp中没有空闲时间片或者空闲时间片不足以使得所有需要调整周期报文发送时刻的节点设备的调整后的周期报文都能够在该周期时间段Tp中发送。在这种情况下,需要对通信周期T或其周期时间段Tp进行调整。
为此,方法300还可以包括:确定该周期时间段Tp是否包含空闲时间片。如果确定该周期时间段Tp包含空闲时间片,确定该空闲时间片是否大于或等于节点设备20的周期报文调整量ΔT与第一报文间隙T3和第二报文间隙T8之差。即,该空闲时间片的长度是否大于或等于ΔT-(T3+T8)。
如果确定该周期时间段Tp不包含空闲时间片,或者确定该空闲时间片小于该节点设备20的周期报文调整量ΔT与第一报文间隙T3和第二报文间隙T8之差,节点设备20可以确定周期时间调整量,并且将该周期时间调整量发送给多个节点设备中的其他节点设备。该周期时间调整量指示对该通信周期T的周期时间段Tp的调整量(例如通信周期T不变,周期时间段Tp增加,相应地非周期时间段Tn减少)或者对该通信周期T的调整量(例如非周期时间段Tn不变,周期时间段Tp增加,从而通信周期T增加)。该周期时间调整量应当大于或等于节点设备20的周期报文调整量ΔT与第一报文间隙T3和第二报文间隙T8之差,即大于ΔT-(T3+T8)。
另一方面,如果确定该空闲时间片大于或等于该节点设备20的周期报文调整量ΔT与第一报文间隙T3和第二报文间隙T8之差,可以不对周期时间段Tp或者通信周期T进行调整,即可以不执行任何额外操作。
在一些实施例中,该周期时间调整量可以在步骤350中确定并且通过周期时间调整报文发送给其他节点设备。
在另一些实施例中,该周期时间调整量可以在方法300的单独的步骤中确定并且通过其他报文发送给其他节点设备。
在一些情况下,可能出现网络100中的两个或更多个节点设备在同一通信周期中同时调整周期报文长度的情况。在这种情况下,这些节点设备的周期时间调整报文中所声明的周期报文发送时刻和周期报文截止时刻可能会发生冲突,为此,在一些实施例中,方法300进一步提供了解决这种冲突的方案。
具体地,在一些实施例中,节点设备20在确定调整后的周期报文发送时刻之后、发送周期时间调整报文之前(即步骤340和350之间)或者在发送周期时间调整报文之后(即步骤350之后),可以确定是否接收到网络100中的其他节点设备的周期时间调整报文。如果确定接收到其他节点设备的周期时间调整报文,节点设备20可以确定其他节点设备的周期时间报文中所声明的周期报文发送时刻和周期报文截止时刻是否与节点设备20的调整后的周期报文发送时刻和周期报文截止时刻冲突。即,确定其他节点设备所声明的新的周期时间片和节点设备20所声明的新的周期时间片是否冲突。
如果确定其他节点设备的周期时间报文中所声明的周期报文发送时刻和周期报文截止时刻与节点设备20的调整后的周期报文发送时刻和周期报文截止时刻冲突,节点设备20可以进一步确定其他节点设备的优先级是否高于节点设备20。根据不同的系统设置,节点设备的优先级可以通过多种方式确定。例如,可以根据节点设备的地址设置节点优先级,将地址更小或更大的节点设备设置为具有更高优先级。或者,可以根据节点设备的类型设置节点优先级,例如将重要性更高的类型的节点设备的优先级设置得更高。
如果节点设备20确定其他节点设备的优先级高于节点设备20,则节点设备20可以放弃发送其周期时间调整报文,或者放弃调整其周期报文发送时刻,并且返回步骤310重新监听网络100中的节点设备的周期报文。
另一方面,如果节点设备20确定其他节点设备的优先级低于节点设备20,则节点设备20可以继续进行步骤350以发送其周期时间调整报文或者继续按照调整后的周期报文发送时刻进行周期报文的发送。
图7示出了适合实现本公开的实施例的节点设备700的方框图。节点设备700可以用来实现如图1中所示的多个节点设备中的任一个,例如如上所述的节点设备20。
如图7中所示,节点设备700可以包括处理器710。处理器710控制节点设备700的操作和功能。例如,在某些实施例中,处理器710可以借助于与其耦合的存储器720中所存储的指令730来执行各种操作。存储器720可以是适用于本地技术环境的任何合适的类型,并且可以利用任何合适的数据存储技术来实现,包括但不限于基于半导体的存储器件、磁存储器件和系统、光存储器件和系统。尽管图7中仅仅示出了一个存储器720,但是本领域技术人员可以理解,节点设备700可以包括更多个物理上不同的存储器720。
处理器710可以是适用于本地技术环境的任何合适的类型,并且可以包括但不限于通用计算机、专用计算机、微处理器、数字信号处理器(DSP)以及基于处理器的多核处理器架构中的一个或多个。节点设备700也可以包括多个处理器710。处理器710与收发器740耦合,收发器740可以借助于一个或多个通信部件来实现信息的接收和发送。上文参考图1至图6所描述的所有特征均适用于节点设备700,在此不再赘述。
利用本发明的方案,当网络中的一个节点设备的周期报文长度需要发生变化时,其可以自动调整网络组态以满足其报文调整需要,而不需要其他监视节点或主节点重新配置整个网络。
本发明可以实现为方法、装置、系统和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于执行本发明的各个方面的计算机可读程序指令。
在一个或多个示例性设计中,可以用硬件、软件、固件或它们的任意组合来实现本发明所述的功能。例如,如果用软件来实现,则可以将所述功能作为一个或多个指令或代码存储在计算机可读介质上,或者作为计算机可读介质上的一个或多个指令或代码来传输。
本文公开的装置的各个单元可以使用分立硬件组件来实现,也可以集成地实现在一个硬件组件,如处理器上。例如,可以用通用处理器、数字信号处理器(DSP)、专用集成电路(ASIC)、现场可编程门阵列(FPGA)或其它可编程逻辑器件、分立门或者晶体管逻辑、分立硬件组件或用于执行本文所述的功能的任意组合来实现或执行结合本发明所描述的各种示例性的逻辑块、模块和电路。
本领域普通技术人员还应当理解,结合本发明的实施例描述的各种示例性的逻辑块、模块、电路和算法步骤可以实现成电子硬件、计算机软件或二者的组合。
本发明的以上描述用于使本领域的任何普通技术人员能够实现或使用本发明。对于本领域普通技术人员来说,本发明的各种修改都是显而易见的,并且本文定义的一般性原理也可以在不脱离本发明的精神和保护范围的情况下应用于其它变形。因此,本发明并不限于本文所述的实例和设计,而是与本文公开的原理和新颖性特性的最广范围相一致。

Claims (8)

1.一种自适应调整网络组态的方法,所述网络包括多个节点设备,所述方法包括:
在所述多个节点设备的通信周期的周期时间段期间,所述多个节点设备中的一个节点设备监听所述多个节点设备的多个周期报文;
从所述多个周期报文中确定第一周期报文和第二周期报文,其中所述第一周期报文是所述节点设备的周期报文的前一周期报文,所述第二周期报文是所述节点设备的周期报文的后一周期报文;
分别基于所述第一周期报文和所述第二周期报文在所述节点设备的收发时刻确定所述周期报文与所述第一周期报文之间的第一报文间隙和所述周期报文与所述第二周期报文之间的第二报文间隙,其中所述第一报文间隙是转发所述第一周期报文的截止时刻与发送所述周期报文的开始时刻之间的时间间隔,所述第二报文间隙是接收所述周期报文的截止时刻与接收所述第二周期报文的开始时刻之间的时间间隔;
基于所述节点设备的周期报文调整量、所述第一报文间隙和所述第二报文间隙调整所述节点设备的周期报文的发送时刻以获得调整后的周期报文发送时刻;以及
向所述多个节点设备中的其他节点设备发送周期时间调整报文,所述周期时间调整报文包括所述节点设备的调整后的周期报文发送时刻和周期报文截止时刻或者调整后的周期报文长度,
其中调整所述节点设备的周期报文的发送时刻以获得调整后的周期报文发送时刻包括:
确定所述第一报文间隙和所述第二报文间隙是否满足所述节点设备的周期报文调整量;
响应于确定所述第一报文间隙和所述第二报文间隙满足所述节点设备的周期报文调整量,调整所述节点设备的周期报文的发送时刻以获得调整后的周期报文发送时刻;以及
响应于确定所述第一报文间隙和所述第二报文间隙不满足所述节点设备的周期报文调整量,调整所述节点设备的周期报文的发送时刻以获得调整后的周期报文发送时刻,并且产生所述周期时间调整报文。
2.如权利要求1所述的方法,其中确定所述第一报文间隙包括:
基于所述节点设备接收所述第一周期报文的第一接收时刻、转发所述第一周期报文的第一转发延时、发送所述节点设备的周期报文的发送时刻和所述第一周期报文的报文长度确定所述第一报文间隙;并且确定所述第二报文间隙包括:
基于所述节点设备接收所述第二周期报文的第二接收时刻、接收所述节点设备的周期报文的接收时刻和所述周期报文的报文长度确定所述第二报文间隙。
3.如权利要求1所述的方法,其中调整所述节点设备的周期报文的发送时刻包括:
确定所述周期报文调整量是否小于所述第一报文间隙;
响应于确定所述周期报文调整量小于所述第一报文间隙,将所述节点设备的周期报文的发送时刻提前所述周期报文调整量以获得所述调整后的周期报文发送时刻;
响应于确定所述周期报文调整量大于或等于所述第一报文间隙,确定所述周期报文调整量是否小于所述第一报文间隙和所述第二报文间隙之和;以及
响应于确定所述周期报文调整量小于所述第一报文间隙和所述第二报文间隙之和,确定所述调整后的周期报文发送时刻的范围,并且选择所述范围内的任意时刻作为所述调整后的周期报文发送时刻。
4.如权利要求1所述的方法,其中调整所述节点设备的周期报文的发送时刻包括:
确定所述周期报文调整量是否小于所述第二报文间隙;
响应于确定所述周期报文调整量小于所述第二报文间隙,使得所述调整后的周期报文发送时刻等于所述周期报文的发送时刻并且将所述节点设备的周期报文的截止时刻延后所述周期报文调整量;
响应于确定所述周期报文调整量大于或等于所述第二报文间隙,确定所述周期报文调整量是否小于所述第一报文间隙和所述第二报文间隙之和;以及
响应于确定所述周期报文调整量小于所述第一报文间隙和所述第二报文间隙之和,确定所述调整后的周期报文发送时刻的范围,并且选择所述范围内的任意时刻作为所述调整后的周期报文发送时刻。
5.如权利要求1所述的方法,还包括:
确定所述周期时间段是否包含空闲时间片;
响应于确定所述周期时间段包含空闲时间片,确定所述空闲时间片是否大于或等于所述节点设备的周期报文调整量与所述第一报文间隙和所述第二报文间隙之差;
响应于确定所述周期时间段不包含空闲时间片,或者响应于确定所述空闲时间片小于所述节点设备的周期报文调整量与所述第一报文间隙和所述第二报文间隙之差,确定周期时间调整量,所述周期时间调整量大于或等于所述节点设备的周期报文调整量与所述第一报文间隙和所述第二报文间隙之差;以及
向所述多个节点设备中的其他节点设备发送所述周期时间调整量。
6.如权利要求1所述的方法,还包括:
确定是否接收到所述网络中的其他节点设备的周期时间调整报文;
响应于确定接收到其他节点设备的周期时间调整报文,确定所述其他节点设备的周期时间报文中所声明的周期报文发送时刻和周期报文截止时刻是否与所述节点设备的调整后的周期报文发送时刻和周期报文截止时刻冲突;
响应于确定所述其他节点设备的周期时间报文中所声明的周期报文发送时刻和周期报文截止时刻与所述节点设备的调整后的周期报文发送时刻和周期报文截止时刻冲突,确定所述其他节点设备的优先级是否高于所述节点设备;以及
响应于确定所述其他节点设备的优先级高于所述节点设备,放弃调整其周期报文发送时刻。
7.一种节点设备,包括:
处理器和存储器,所述存储器存储可由所述处理器运行的指令,所述处理器被配置为执行所述指令以使得所述节点设备执行如权利要求1-6中任一项所述的方法。
8.一种计算机可读存储介质,其上存储有计算机程序代码,所述计算机程序代码在被运行时执行如权利要求1至6中任一项所述的方法。
CN202110853606.XA 2021-07-28 2021-07-28 自适应调整网络组态的方法、节点设备和存储介质 Active CN113315668B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110853606.XA CN113315668B (zh) 2021-07-28 2021-07-28 自适应调整网络组态的方法、节点设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110853606.XA CN113315668B (zh) 2021-07-28 2021-07-28 自适应调整网络组态的方法、节点设备和存储介质

Publications (2)

Publication Number Publication Date
CN113315668A CN113315668A (zh) 2021-08-27
CN113315668B true CN113315668B (zh) 2021-10-15

Family

ID=77382359

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110853606.XA Active CN113315668B (zh) 2021-07-28 2021-07-28 自适应调整网络组态的方法、节点设备和存储介质

Country Status (1)

Country Link
CN (1) CN113315668B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115733710B (zh) * 2022-11-18 2024-04-26 苏州挚途科技有限公司 报文发送方法、目标节点、非目标节点与报文传输系统
CN117278639B (zh) * 2023-11-21 2024-01-30 浙江国利信安科技有限公司 基于确定性网络的通信时间调度的方法、设备和存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111327476A (zh) * 2020-02-27 2020-06-23 浙江中控研究院有限公司 一种基于帧预留的带宽动态调整系统及方法

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW395099B (en) * 1998-04-10 2000-06-21 Accton Technology Corp Method of proportional adjustment for interframe gap
CN100558075C (zh) * 2004-12-29 2009-11-04 华为技术有限公司 基于逻辑实现数据包动态调速的方法和装置
CN101453422B (zh) * 2008-11-07 2011-03-16 广东科达机电股份有限公司 网络带宽分配方法及装置
CN107787044A (zh) * 2016-08-29 2018-03-09 北京钧威科技有限公司 一种动态时隙分配的实现方法及装置
CN112911693B (zh) * 2019-11-19 2022-03-29 大唐移动通信设备有限公司 一种消息处理方法和装置

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111327476A (zh) * 2020-02-27 2020-06-23 浙江中控研究院有限公司 一种基于帧预留的带宽动态调整系统及方法

Also Published As

Publication number Publication date
CN113315668A (zh) 2021-08-27

Similar Documents

Publication Publication Date Title
CN107241179B (zh) 一种时间触发业务静态调度表的生成方法
CN112764407B (zh) 一种分布式控制的非周期通信方法
CN113347048B (zh) 自适应调整网络组态的方法、节点设备和存储介质
US9998389B2 (en) Method and apparatus for blocking transmission of frames from a network device
CN113315668B (zh) 自适应调整网络组态的方法、节点设备和存储介质
CN101582824B (zh) 关于控制局域网总线从节点设备的节点号自动分配方法
WO2008101394A1 (fr) Procédé synchrone en temps réel et réseau synchrone reposant sur le standard ethernet
US20110182178A1 (en) Randomization Management For Carrier Sensing Multiple Access with Collision Avoidance (CSMA-CA)
CN100417122C (zh) 实现以太网确定性通信的调度方法
CN113938387A (zh) 一种通信方法、装置及可读存储介质
CN110034942B (zh) 一种基于半双工电台的组网通信控制方法和系统
CN110492960A (zh) 基于以太网的同步通信方法
CN107172692A (zh) 低时延保障时隙分配方法
CN113271238A (zh) Epa系统的链路检测方法、epa设备和计算机介质
US10742260B2 (en) Synchronizing unicast traffic
JP2015154212A (ja) ネットワークシステム、そのパラメータ決定装置
CN210780847U (zh) 一种EtherCAT总线时钟分布系统
Krohn et al. TOMAC–real-time message ordering in wireless sensor networks using the MAC layer
CN116455833B (zh) 一种EtherCAT网络及其链路扩充方法和装置
US20220050440A1 (en) Communication Device and Method for Data Transmission within an Industrial Communication Network
CN111698059A (zh) 协议控制帧无冲突传输方法
CN104410585A (zh) 一种以太网消息实时传输方法及装置
CN102299839A (zh) Eoc网络中用户端设备的mac芯片及其实现方法
CN116033041B (zh) 网络互联互通控制方法、系统、设备及计算机存储介质
US20240056400A1 (en) Time synchronized collective communication

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
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Method, node device and storage medium for adaptively adjusting network configuration

Effective date of registration: 20220316

Granted publication date: 20211015

Pledgee: Bank of Shanghai Limited by Share Ltd. Hangzhou branch

Pledgor: ZHEJIANG GUOLI XIN'AN TECHNOLOGY Co.,Ltd.

Registration number: Y2022330000341

PE01 Entry into force of the registration of the contract for pledge of patent right
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20230831

Granted publication date: 20211015

Pledgee: Bank of Shanghai Limited by Share Ltd. Hangzhou branch

Pledgor: ZHEJIANG GUOLI XIN'AN TECHNOLOGY Co.,Ltd.

Registration number: Y2022330000341

PC01 Cancellation of the registration of the contract for pledge of patent right
PE01 Entry into force of the registration of the contract for pledge of patent right

Denomination of invention: Adaptive adjustment of network configuration methods, node devices, and storage media

Effective date of registration: 20230911

Granted publication date: 20211015

Pledgee: Bank of Shanghai Limited by Share Ltd. Hangzhou branch

Pledgor: ZHEJIANG GUOLI XIN'AN TECHNOLOGY Co.,Ltd.

Registration number: Y2023330002003

PE01 Entry into force of the registration of the contract for pledge of patent right