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

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

Info

Publication number
CN113347048B
CN113347048B CN202110853661.9A CN202110853661A CN113347048B CN 113347048 B CN113347048 B CN 113347048B CN 202110853661 A CN202110853661 A CN 202110853661A CN 113347048 B CN113347048 B CN 113347048B
Authority
CN
China
Prior art keywords
address
periodic
idle
node device
time
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
CN202110853661.9A
Other languages
English (en)
Other versions
CN113347048A (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 CN202110853661.9A priority Critical patent/CN113347048B/zh
Publication of CN113347048A publication Critical patent/CN113347048A/zh
Application granted granted Critical
Publication of CN113347048B publication Critical patent/CN113347048B/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L61/00Network arrangements, protocols or services for addressing or naming
    • H04L61/50Address allocation
    • H04L61/5007Internet protocol [IP] addresses

Abstract

本发明提供了一种自适应调整网络组态的方法、节点设备和计算机可读存储介质。该方法包括:在一个或多个通信周期的周期时间段期间,监听多个节点设备的多个周期报文;基于多个周期报文中的地址信息确定网络中是否存在空闲地址;响应于确定网络中存在空闲地址,以空闲地址作为临时地址向多个节点设备中的主时钟设备发送地址声明报文,地址声明报文包括临时地址;确定是否从主时钟设备接收到指示允许临时地址作为节点设备的地址的地址响应报文;以及响应于确定从主时钟设备接收到地址响应报文,将临时地址配置为节点设备的地址。

Description

自适应调整网络组态的方法、节点设备和存储介质
技术领域
本发明概括而言涉及通信领域,更具体地,涉及一种自适应调整网络组态的方法、节点设备和计算机可读存储介质。
背景技术
在工控领域中,网络组态是指网络的各种配置。当前,网络通常采用令牌、轮询、时分复用等方式控制各个组成部分进行数据通信。例如,令牌协议要求存在一个令牌管理节点负责令牌的产生与分发,当令牌发送后没有节点持有令牌时,系统需要等待超时,由令牌管理节点重新生成令牌。在这种控制方式中,系统需要花费大量时间用于令牌发送和令牌等待,总线利用率较低。当系统中需要上线新的节点或者已有节点的报文数据长度需要更改时,往往需要停止系统工作,人工重新配置网络组态,过程复杂且耗时漫长。
此外,在一些网络自组网方法中,通常采用主节点或监视节点向新上线的设备分配周期时间段内的时间片以用于该新设备发送其周期报文。这种自组网方法抗干扰性差,如果主节点或监视节点损坏则将丧失自组网功能,并且这种自组网方式不支持已工作的节点动态更改周期数据长度。
发明内容
针对上述问题中的至少一个,本发明提供了一种自适应调整网络组态的方案,其中想要新加入网络的节点设备可以通过监听网络中的各个节点设备的周期报文来自适应地确定其网络地址和/或发送其周期报文的周期时间片。
根据本发明的一个方面,提供了一种自适应调整网络组态的方法。所述网络包括多个节点设备。所述方法包括,由所述网络之外的一个节点设备:在所述多个节点设备的一个或多个通信周期的周期时间段期间,监听所述多个节点设备的多个周期报文;基于所述多个周期报文中的地址信息确定所述网络中是否存在空闲地址;响应于确定所述网络中存在空闲地址,以所述空闲地址作为临时地址向所述多个节点设备中的主时钟设备发送地址声明报文,所述地址声明报文包括所述临时地址;确定是否从所述主时钟设备接收到指示允许所述临时地址作为所述节点设备的地址的地址响应报文;以及响应于确定从所述主时钟设备接收到所述地址响应报文,将所述临时地址配置为所述节点设备的地址。
在一些实施例中,发送地址声明报文包括:响应于确定所述网络中存在多个空闲地址,以所述多个空闲地址中优先级最高的空闲地址作为所述临时地址发送所述地址声明报文。
在一些实施例中,该方法还包括:基于所述多个周期报文在所述节点设备的收发时刻确定所述周期时间段中的至少一个空闲周期时间片;确定所述至少一个空闲周期时间片中是否存在满足所述节点设备所需要的时间片的空闲周期时间片;响应于确定所述至少一个空闲周期时间片中不存在满足所述节点设备所需要的时间片的空闲周期时间片,确定周期时间调整量并且向所述多个节点设备发送周期长度调整报文,所述周期长度调整报文包括所述周期时间调整量;以及响应于确定所述至少一个空闲周期时间片中存在满足所述节点设备所需要的时间片的空闲周期时间片,向所述主时钟设备发送周期调度声明报文,所述周期调度声明报文包括所述空闲周期时间片。
在一些实施例中,确定所述周期时间段中的至少一个空闲周期时间片包括:对于所述多个周期报文中的第一个周期报文,基于所述第一个周期报文的接收时刻和所述周期时间段的开始时刻之间的差值确定一个空闲周期时间片。
在一些实施例中,确定所述周期时间段中的至少一个空闲周期时间片包括:对于所述多个周期报文中的最后一个周期报文,基于所述最后一个周期报文的转发截止时刻和所述周期时间段的结束时刻之间的差值确定一个空闲周期时间片。
在一些实施例中,该方法还包括:确定是否从所述主时钟设备接收到指示允许所述空闲周期时间片作为所述节点设备的周期时间片的周期调度响应报文;以及响应于确定从所述主时钟设备接收到所述周期调度响应报文,将所述空闲周期时间片配置为所述节点设备的周期时间片。
在一些实施例中,向所述主时钟设备发送周期调度声明报文包括:响应于确定所述至少一个空闲周期时间片中存在满足所述节点设备所需要的时间片的多个空闲周期时间片,向所述主时钟设备发送周期调度声明报文,所述周期调度声明报文包括所述多个空闲周期时间片中优先级最高的空闲周期时间片。
根据本发明的另一个方面,提供了一种节点设备,包括:处理器和存储器,所述存储器包括可由所述处理器运行的指令,所述处理器被配置为使得所述节点设备执行如上所述的任一方法。
根据本发明的另一个方面,提供了一种计算机可读存储介质,其上存储有计算机程序代码,该计算机程序代码在被运行时执行如上所述的方法。
附图说明
通过参考下列附图所给出的本发明的具体实施方式的描述,将更好地理解本发明,并且本发明的其他目的、细节、特点和优点将变得更加显而易见。
图1示出了根据本发明的实施例的示例性网络的示意图。
图2示出了根据本发明实施例的网络的通信周期的示意图。
图3示出了根据本发明的一些实施例的自适应调整网络组态的方法的流程图。
图4示出了根据本发明实施例的包含新加入的节点设备的网络的示意图。
图5示出了根据本发明实施例的图1所示的网络中的多个节点设备的周期报文的收发时序图。
图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的流程图。图4示出了根据本发明实施例的包含新加入的节点设备50的网络100的示意图。如图4中所示,与图1相比,节点设备50想要加入网络100,更具体地,假设其想要加入节点设备20和节点设备30之间,并且具有一个或多个发送端口(图4中示例性地为节点设备50示出了一个发送端口50A)和一个或多个接收端口(图4中示例性地为节点设备50示出了一个接收端口50B)。方法300例如可以由图1中所示的网络100之外的节点设备50在想要加入网络100时实现。具体地,在本发明中,节点设备50可以确定网络100中是否有可用的网络地址和/或是否有可用的周期时间片用于传输其周期报文。
在步骤302,在一个或多个通信周期T的周期时间段Tp期间,节点设备50监听网络100中的多个节点设备(如节点设备10、20、30和40)的多个周期报文。
如图1中所示,对于每个节点设备来说,其通过其发送端口发送或转发的每个周期报文,在经过一定路径延时之后到达下一节点设备的接收端口,在下一节点设备中经过一定转发延时之后,该周期报文被下一节点设备的发送端口转发给再下一个节点设备。
在接收到每个周期报文时,节点设备50可以从该周期报文中(例如从其报文头中)提取发送该周期报文的源节点设备的地址信息(或者简单称为该周期报文的地址信息)。该地址信息例如可以包括源节点设备的IP地址。此外,该地址信息还可以包括源节点设备的物理地址(如MAC(Media Access Control,媒体访问控制)地址)。此外,节点设备50还可以记录接收到每个周期报文的接收时刻,如下所详述。
在步骤304,节点设备50可以基于步骤302中监听的多个节点设备的多个周期报文中的地址信息确定网络100中当前是否存在空闲地址。
这里,假设节点设备50能够提前得知网络100的完整地址空间。例如,可以通过网络100所处的网段得知网络100的地址空间(如IP地址空间)或者从执行网络100的控制功能的上位机获取网络100的地址空间等。
节点设备50能够监听一个或多个通信周期T中各个节点设备的周期报文,从而确保获得了网络100中的所有节点设备的地址信息。
节点设备50可以将所获取的网络100中的所有节点设备的地址信息与网络100的完整地址空间进行比较以获得是否有尚未被网络100中的已有的节点设备占用的地址,即空闲地址。如果节点设备50确定网络100的完整地址空间已经都被网络100中的节点设备占用,则可以确定网络100中不存在空闲地址。在这种情况下,节点设备50可以停止方法300的执行或者返回步骤302以重复上述步骤302至304(图中未示出)。反之,如果节点设备50确定网络100的完整地址空间中有一个或多个地址尚未被网络100中的节点设备占用,则节点设备50可以将这一个或多个地址确定为网络100中的空闲地址。
如果确定网络100中存在空闲地址,在步骤306,节点设备50可以以该空闲地址作为临时地址向网络100中的多个节点设备中的主时钟设备发送地址声明报文。该地址声明报文中包括该空闲地址。
如上所述,节点设备50可能确定网络100中有一个或多个空闲地址。在存在多个空闲地址的情况下,节点设备50可以从多个空闲地址中选择优先级最高的空闲地址作为该临时地址来发送该地址声明报文。这里,取决于不同的系统设置,空闲地址的优先级可以不同地设置。例如,可以将较小的地址或较大的地址设置为具有更高优先级。或者,可以将与已占用的地址距离最远的空闲地址作为优先级最高的空闲地址。
这里,地址声明报文可以在非周期时间段Tn中通过非周期报文发送给主时钟设备。或者,在一些其他实施例中,地址声明报文也可以通过节点设备50和主时钟设备(假设图1和图4中的节点设备10是网络100的主时钟设备)之间的直接链路(图中未示出)或者经由上位机发送给主时钟设备。
在接收到节点设备50的地址声明报文时,主时钟设备可以确定是否允许将该地址声明报文中的临时地址作为节点设备50的地址。具体地,在一些实施例中,主时钟设备可以确定该临时地址是否与主时钟设备中维护的当前正在使用的地址列表中的地址冲突。或者,主时钟设备可以确定该临时地址是否是预留的专用地址。如果存在地址冲突或者该临时地址是预留的专用地址,则主时钟设备可以确定不允许将该临时地址作为节点设备50的地址。反之,主时钟设备可以确定允许将该临时地址作为节点设备50的地址。
如果主时钟设备确定允许将该临时地址作为节点设备50的地址,主时钟设备可以产生地址响应报文以指示将该临时地址配置为节点设备50的地址。
主时钟设备可以在通信周期T的非周期时间段Tn中发送该地址响应报文。接收到该地址响应报文的每个节点设备可以知道节点设备50的地址,并且将其存储在各自的本地地址表中。
对于节点设备50来说,在步骤308,其可以确定是否从主时钟设备接收到该地址响应报文。该地址响应报文指示允许将该地址声明报文中包括的临时地址作为节点设备50的地址。
如果确定从主时钟设备接收到该地址响应报文,在步骤310,节点设备50可以将该临时地址配置为其自身的地址。
相反,如果确定没有从主时钟设备接收到该地址响应报文,或者确定接收到其他报文(如拒绝该临时地址作为节点设备50的地址的报文),则节点设备50可以(图中未示出)结束方法300的执行、返回步骤302重新执行上述步骤302至310,或者返回步骤306以重新选择多个空闲地址中的另一空闲地址作为新的临时地址并且向主时钟设备发送包含该新的临时地址的新的地址声明报文(在步骤304中确定网络100中存在多个空闲地址的情况下)等。
通过上述方式,想要新加入该网络100的节点设备50能够通过侦听网络100中的已有节点设备的地址信息来确定网络100中是否有潜在的地址空间供其接入,而无需令牌管理节点、主时钟节点或者监视节点来主动发起该配置。
在一些情况下,节点设备50不需要在每个通信周期都发送周期报文,例如其仅充当网络100的监测设备,此时方法300可以在步骤310之后结束。
在另一些情况下,节点设备50需要在网络100中发送周期报文,此时还需要确定网络100中是否具有可用的周期时间片可供节点设备50传输其周期报文。
如上所述,在步骤302中在节点设备50接收到每个周期报文时,其可以确定该周期报文的接收时刻。
图5示出了根据本发明实施例的图1所示的网络100中的多个节点设备10、20、30和40的周期报文的收发时序图。如图5中所示,对于每个节点设备10、20、30或40来说,其通过其发送端口发送或转发的每个周期报文,在经过一定路径延时之后到达下一节点设备的接收端口,在下一节点设备中经过一定转发延时之后,该周期报文被下一节点设备的发送端口转发给再下一个节点设备。例如,对于节点设备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。
节点设备50可以在每次接收到一个周期报文时,从该周期报文中提取该周期报文的数据长度并且打上接收时间戳(如图5所示的接收到周期报文P10的时刻t1、接收到周期报文P20的时刻t8、接收到周期报文P30的时刻t10等)。该节点设备可以基于其自身的转发延时推测转发该周期报文的开始时间戳和截止时间戳(如图5所示的转发周期报文P10的开始时刻t2和截止时刻t3等),从而根据收发周期报文的这些时间戳信息确定接收到的所有周期报文的时序关系。
基于一个节点设备发送其自身周期报文的发送时刻和再次接收到其周期报文的接收时刻之间的差值,可以确定网络100的总路径延时。如图5中所示,在节点设备20处,其经由发送端口20A发送周期报文P20的时刻为t4,经由接收端口20B接收周期报文P20的时刻为t8,因此可以确定周期报文P20在网络100中的总路径延时TD=t8-t4。由于每个节点设备的周期报文都经历相同的传输路径,因此每个周期报文的总路径延时可以被认为是相同的,也被称为网络100的总路径延时。
注意,图5中示意性地将各个节点设备之间的路径延时Δp都显示为相同大小,并且将各个节点设备的转发延时Δf都显示为相同大小,但是本领域技术人员可以理解,图5中所显示的仅仅是示意性地,在实际的网络100中,各个节点设备之间的路径延时和/或各个节点设备的转发延时通常各不相同。
在一些实施例中,节点设备50可以监听网络100的多个通信周期T,以获得如图5中所示的周期报文的收发时序图。通过这种方式,可以确保不会遗漏任何节点设备的周期报文并且可以排除突发的报文收发紊乱。
继续图3,在步骤312,节点设备50可以基于步骤302获得的多个周期报文在节点设备50的收发时刻确定周期时间段Tp中的至少一个空闲周期时间片。
图6示出了节点设备10、20、30和40发出的各个周期报文在新加入的节点设备50处的简化的收发时序图。
具体地,在一种实施例中,节点设备50可以基于其接收每个周期报文的接收时刻(例如图6中所示的接收周期报文P10的时刻t21、接收周期报文P20的时刻t23、接收周期报文P30的时刻t25和接收周期报文P40的时刻t27)和转发每个周期报文的截止时刻(例如图6中所示的转发周期报文P10的截止时刻t22、转发周期报文P20的截止时刻t24、转发周期报文P30的截止时刻t26和转发周期报文P40的截止时刻t28)来确定周期时间段Tp的空闲周期时间片。
更具体地,节点设备50可以将其转发一个周期报文的转发截止时刻到接收到下一周期报文的接收时刻之间的时间片确定为空闲周期时间片。如图6中所示,节点设备50可以将其转发周期报文P10的转发截止时刻t22与接收周期报文P20的接收时刻t23之间的时间片确定为一个空闲周期时间片S1,即S1=t23-t22,将其转发周期报文P20的转发截止时刻t24与接收周期报文P30的接收时刻t25之间的时间片确定为另一个空闲时间片S2,即S2=t25-t24。
在一些情况下,当前周期报文的转发截止时刻可能晚于下一周期报文的接收时刻。在这种情况下,可以确定当前周期报文与下一周期报文之间不存在空闲周期时间片。例如,如图6所示,节点设备50对周期报文P30的转发截止时刻t26在节点设备50接收到周期报文P40的接收时刻t27之后,则可以确定周期报文P30和P40之间不存在空闲周期时间片。
此外,在一些实施例中,即使当前周期报文的转发截止时刻早于下一周期报文的接收时刻,但是二者的差值小于预定阈值(如1-3μm),则节点设备50仍然可以判断在当前周期报文和下一周期报文之间不存在空闲周期时间片。例如,假设图6中节点设备50对周期报文P30的转发截止时刻t26在节点设备50接收到周期报文P40的接收时刻t27之前1 μm,在这种实施例中节点设备50仍然可以将周期报文P30和P40之间确定为不存在空闲周期时间片。这里,预定阈值可以是一个与常规的周期报文长度相比相当的值,当空闲周期时间片的长度小于该预定阈值时即使不考虑路径延迟也不足以传输新的周期报文。
此外,对于周期时间段Tp中接收到的第一个周期报文,节点设备可以基于第一个周期报文的接收时刻与当前周期时间段Tp的开始时刻之间的差值确定空闲周期时间片。例如,如图6中所示,对于周期时间段Tp中的第一个周期报文P10,节点设备50可以将其接收时刻t21与周期时间段Tp的开始时刻t00之间的时间片确定为一个空闲周期时间片S0,即S0=t21-t00。
此外,对于周期时间段Tp中接收到的最后一个周期报文,节点设备可以基于最后一个周期报文的转发截止时刻与当前周期时间段Tp的结束时刻之间的差值确定空闲周期时间片。例如,如图6中所示,对于周期时间段Tp中的最后一个周期报文P40,节点设备50可以将其转发截止时刻t28与周期时间段Tp的结束时刻t01之间的时间片确定为一个空闲周期时间片S3,即S3=t01-t28。
这样,通过步骤312,节点设备50在周期时间段Tp中确定了至少一个空闲周期时间片,如图6中确定了4个空闲周期时间片S0、S1、S2和S3。
这里,以基于各个周期报文的接收时刻和转发截止时刻来确定空闲周期时间片为例进行了描述。在一些其他实施例中,节点设备50可以不直接记录各个周期报文的转发截止时刻,而是基于各个周期报文的接收时刻和该节点设备50的转发延时来推测该周期报文在节点设备50处的转发截止时刻。每个节点设备的转发延时可以由系统和/或协议栈结构等决定,其是一个固定的或可计算的参数,或者可以是0。
当然,按照上述确定空闲周期时间片的方法也可能在步骤312中无法找到任何空闲周期时间片。在这种情况下,节点设备50可以停止执行方法300或者返回步骤302重新监听周期报文(图中未示出)。
在步骤314,节点设备50可以确定步骤312中确定的至少一个空闲周期时间片中是否存在满足节点设备50所需要的时间片的空闲周期时间片。
假设节点设备50的周期报文P50的长度为T50(其可以是基于周期报文P50的数据长度换算得到的时间长度,在本文中直接以该时间长度来表示周期报文的长度),网络100的总路径延时为TD,则节点设备50所需要的时间片的长度为S= T50+TD
在步骤314,节点设备50可以将步骤312中确定的至少一个空闲周期时间片S0至S3的长度分别与节点设备50所需要的时间片的长度S进行比较以确定其中是否有大于节点设备50所需要的时间片的长度S的空闲周期时间片。
如果在步骤314确定步骤312所确定的至少一个空闲周期时间片S0至S3中不存在满足节点设备50所需要的时间片S的空闲周期时间片,在步骤316,节点设备50可以确定一个周期时间调整量,并且将其包含在周期长度调整报文中发送给多个节点设备10、20、30和40。该周期时间调整量用于增大周期时间段Tp的长度以使得增大的周期时间段Tp中包含能够满足节点设备50所需要的时间片S的空闲周期时间片。其中,取决于不同的系统设置,周期时间段Tp的增大包括增大周期时间段Tp同时减少非周期时间段Tn以保持通信周期T的长度不变以及同时增大周期时间段Tp的长度和通信周期T的长度同时保持非周期时间段Tn的长度不变。
在一些实施例中,节点设备50可以从至少一个空闲周期时间片S0至S3中选择最大的一个空闲周期时间片,例如图6中的空闲周期时间片S2,并且计算该最大空闲周期时间片S2与节点设备50所需要的时间片S之间的差值作为该周期时间调整量ΔS,即ΔS=S-S2。在这种情况下,周期长度调整报文中除了该周期时间调整量之外,还可以包括关于空闲周期时间片S2的信息,如空闲周期时间片S2的开始时刻t24和结束时刻t25等。接收到该周期长度调整报文的节点设备10、20、30和40可以确定其各自的周期报文是否在该空闲周期时间片S2之后。确定自己的周期报文在该空闲周期时间片S2之后的节点设备(如节点设备30和40)可以基于该周期长度调整报文中的周期时间调整量调整自己的周期报文发送时刻(如时刻t25和t27)。这样,空闲周期时间片S2的长度将增大至节点设备50所需要的时间片S,并且节点设备50可以向主时钟设备发送周期调度声明报文以声明该增加的空闲周期时间片S2,如下所述。
在另一些实施例中,节点设备50可以直接计算该至少一个空闲周期时间片S0至S3中的最后一个空闲周期时间片S3与节点设备50所需要的时间片S之间的差值作为该周期时间调整量ΔS,即ΔS=S-S3。在这种情况下,周期长度调整报文中可以仅包括该周期时间调整量,并且接收到该周期长度调整报文的节点设备10、20、30和40可以根据该周期时间调整量确定调整后的周期时间段Tp的长度,但是无需调整各自的周期报文收发时刻。
另一方面,如果在步骤314确定步骤312所确定的至少一个空闲周期时间片S0至S3中存在满足节点设备50所需要的时间片S的空闲周期时间片(如图6中所示的空闲周期时间片S2),在步骤318,节点设备50可以向主时钟设备发送周期调度声明报文,该周期调度声明报文包括该空闲周期时间片S2。该周期调度声明报文用于向主时钟设备请求将该空闲周期时间片S2用于该节点设备50的周期报文的传输。
在一些实施例中,在步骤314所确定的满足节点设备50所需要的时间片S的空闲周期时间片可能有多个。在这种情况下,节点设备50可以从该多个空闲周期时间片中选择优先级最高的空闲周期时间片作为该周期调度声明报文所声明的空闲周期时间片。这里,取决于不同的系统设置,空闲周期时间片的优先级可以不同地设置。例如,可以将较长的空闲周期时间片设置为具有更高优先级,或者,可以将与节点设备50所需要的时间片S最接近的空闲周期时间片作为优先级最高的空闲周期时间片。
此外,在步骤316中节点设备50确定了周期时间调整量并且相应地确定了自己希望的空闲周期时间片(如上文中所述的调整后的空闲周期时间片S2或者S3)之后,其也可以转到步骤318向主时钟设备发送周期调度声明报文以请求使用调整后的空闲周期时间片S2或者S3作为其周期时间片。
在接收到节点设备50的周期调度声明报文时,主时钟设备可以确定是否允许将该周期调度声明报文中声明的空闲周期时间片S2分配给节点设备50的周期报文P50。具体地,在一些实施例中,主时钟设备可以确定该空闲周期时间片S2是否与主时钟设备中维护的当前节点设备的周期报文的收发时刻冲突。或者,主时钟设备可以确定该空闲周期时间片S2是否是预留的专用时间片。如果存在收发时刻冲突或者该空闲周期时间片S2是预留的专用时间片,则主时钟设备可以确定不允许将该空闲周期时间片S2分配给节点设备50的周期报文P50。反之,主时钟设备可以确定允许将该空闲周期时间片S2分配给节点设备50的周期报文P50。
如果主时钟设备确定允许将该空闲周期时间片S2分配给节点设备50的周期报文P50,主时钟设备可以产生周期调度响应报文以指示将该空闲周期时间片S2分配给节点设备50的周期报文P50。
主时钟设备可以在通信周期T的非周期时间段Tn中发送该周期调度响应报文。接收到该周期调度响应报文的每个节点设备可以知道节点设备50的周期时间片(即空闲周期时间片S2)。
对于节点设备50来说,在步骤320,其可以确定是否从主时钟设备接收到该周期调度响应报文。该周期调度响应报文指示允许将该周期调度声明报文中包括的空闲周期时间片S2作为节点设备50的周期时间片。
如果确定从主时钟设备接收到该周期调度响应报文,在步骤322,节点设备50可以将该空闲周期时间片S2配置为其自身的周期时间片。
相反,如果确定没有从主时钟设备接收到该周期调度响应报文,或者确定接收到其他报文(如拒绝该空闲周期时间片S2作为节点设备50的周期时间片的报文),则节点设备50可以(图中未示出)结束方法300的执行、返回步骤302重新执行上述步骤302至320,或者返回步骤306以重新选择多个空闲周期时间片中的另一空闲周期时间片以向主时钟设备进行声明(在步骤314中确定存在多个空闲周期时间片的情况下)等。
通过上述方式,想要新加入该网络100的节点设备50能够通过侦听网络100中的已有节点设备的周期报文的收发时刻来确定网络100中是否有潜在的空闲周期时间片供其发送自己的周期报文,而无需令牌管理节点、主时钟节点或者监视节点来主动发起该配置。
图7示出了适合实现本公开的实施例的节点设备700的方框图。节点设备700可以用来实现如图1中所示的多个节点设备中的任一个,例如如上所述的节点设备50。
如图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中任一项所述的方法。
CN202110853661.9A 2021-07-28 2021-07-28 自适应调整网络组态的方法、节点设备和存储介质 Active CN113347048B (zh)

Priority Applications (1)

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

Applications Claiming Priority (1)

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

Publications (2)

Publication Number Publication Date
CN113347048A CN113347048A (zh) 2021-09-03
CN113347048B true CN113347048B (zh) 2021-11-02

Family

ID=77480412

Family Applications (1)

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

Country Status (1)

Country Link
CN (1) CN113347048B (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN117278471B (zh) * 2023-11-21 2024-01-26 浙江国利信安科技有限公司 用于网络通信时间调度的方法、计算设备和存储介质
CN117278639B (zh) * 2023-11-21 2024-01-30 浙江国利信安科技有限公司 基于确定性网络的通信时间调度的方法、设备和存储介质
CN117478501A (zh) * 2023-12-25 2024-01-30 浙江国利信安科技有限公司 用于epa网络的组态配置的方法、控制设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101110743A (zh) * 2006-07-17 2008-01-23 华为技术有限公司 总线系统中加入新节点的时隙分配方法和装置
CN101170470A (zh) * 2006-10-25 2008-04-30 Abb专利有限公司 用于操作现场总线的方法
CN101170471A (zh) * 2006-10-25 2008-04-30 Abb专利有限公司 用于操作现场总线的方法
CN103716420A (zh) * 2014-01-03 2014-04-09 西南大学 Modbus ASCII从站自动获取站地址方法及从站
CN106060187A (zh) * 2016-05-26 2016-10-26 杭州华三通信技术有限公司 一种地址分配方法及装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4818434B2 (ja) * 2006-05-29 2011-11-16 中国移▲動▼通信集▲団▼公司 ホームネットワークにおけるインテリジェント情報家電及びそのサブ設備に対するアドレス割当方法
US10007628B2 (en) * 2014-06-18 2018-06-26 Qualcomm Incorporated Dynamically adjustable multi-line bus shared by multi-protocol devices

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101110743A (zh) * 2006-07-17 2008-01-23 华为技术有限公司 总线系统中加入新节点的时隙分配方法和装置
CN101170470A (zh) * 2006-10-25 2008-04-30 Abb专利有限公司 用于操作现场总线的方法
CN101170471A (zh) * 2006-10-25 2008-04-30 Abb专利有限公司 用于操作现场总线的方法
CN103716420A (zh) * 2014-01-03 2014-04-09 西南大学 Modbus ASCII从站自动获取站地址方法及从站
CN106060187A (zh) * 2016-05-26 2016-10-26 杭州华三通信技术有限公司 一种地址分配方法及装置

Also Published As

Publication number Publication date
CN113347048A (zh) 2021-09-03

Similar Documents

Publication Publication Date Title
CN113347048B (zh) 自适应调整网络组态的方法、节点设备和存储介质
US9596187B2 (en) Time-triggered Ethernet-based data transmission method and node device
US8850058B2 (en) Ethernet-based data transmission method, ethernet nodes and control system
US20210273772A1 (en) System and method for full duplex mac designs based on backoff in frequency domain
US8972514B2 (en) Data transmitting and receiving method, data transmitting and receiving system, master device, and slave device
WO2012125741A1 (en) Wireless communication profile-based quality of service
JP6265058B2 (ja) ネットワーク伝送システム、そのマスタノード、スレーブノード
CN113315668B (zh) 自适应调整网络组态的方法、节点设备和存储介质
US20110182178A1 (en) Randomization Management For Carrier Sensing Multiple Access with Collision Avoidance (CSMA-CA)
CN113612674B (zh) 用于epa系统的分时复用通信方法、epa设备和介质
CN100417122C (zh) 实现以太网确定性通信的调度方法
WO2014079092A1 (zh) 一种实时数据的传输方法及节点设备
CN111836312B (zh) 一种基于竞争的资源预约方法和设备
CN111836370B (zh) 一种基于竞争的资源预约方法及设备
WO2014036964A1 (zh) 一种多时隙或子帧资源的处理方法及装置
CN107172692A (zh) 低时延保障时隙分配方法
US5706430A (en) Method and system for sequentially broadcasting data according to pre-assigned time slots with and without the reception of a synchronization packet
Peón et al. A wireless MAC method with support for heterogeneous data traffic
US9065668B1 (en) Distributed bandwidth control in a communication network
WO2013084280A1 (ja) 通信システム
JP6328324B2 (ja) 無線通信装置、無線通信方法及び無線通信プログラム
CN113596923B (zh) 一种面向无线网络的混合时隙调度方法
WO2023125579A1 (zh) 一种无线资源调度方法、装置及存储介质
WO2023236145A1 (zh) 一种通信方法和装置
WO2023246471A1 (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
PE01 Entry into force 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: Method, node device and storage medium for adaptively adjusting network configuration

Effective date of registration: 20220316

Granted publication date: 20211102

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
PC01 Cancellation of the registration of the contract for pledge of patent right

Date of cancellation: 20230831

Granted publication date: 20211102

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
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: 20211102

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

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

Registration number: Y2023330002003