用于在通信系统中持久冗余地传送数据电文的方法

文档序号:7869264阅读:204来源:国知局
专利名称:用于在通信系统中持久冗余地传送数据电文的方法
技术领域
本发明涉及一种用于在通信系统中持久冗余地传送数据电文的方法。此外,本发明还涉及一种对应的通信系统和这种通信系统的用户。
背景技术
通信系统被理解成具有多个用户的系统,这些用户为了相互交换数据或者相互传送数据而互相连接。其中,将待传送的数据作为数据电文发送,即,将数据组合成一个或多个分组并按照这种形式通过网络连接线发送到对应的接收器。因此也称其为数据分组。在此,“数据传送”的概念与上面提到的数据电文或数据分组传送同义。
通信系统的用户例如有中央自动化设备,编程、规划和操作设备,例如输入/输出部件的外部设备,驱动器,执行器,传感器,存储可编程控制器(SPS)或其它的检查单元,计算机,或者与其它机器交换电子数据的机器,特别是处理其它机器数据的机器。用户也被称为网络节点或者节点。
在下面将检查单元理解为各种类型的调节或控制单元,以及例如耦合节点(所谓的交换机)和/或交换控制器。作为通信系统以及数据网络例如使用可连接通信系统,如交换以太网络、工业以太网络,特别是还有等时实时以太网络。
传送速率≥100MB/s的通信系统通常是可连接的高导电数据网络,并且由具有所谓主动节点或耦合节点(也称为交换机)的、单个点对点连接构成,这些耦合节点分别接在单个的用户之间。每个耦合节点通常具有多个端口,因此可以根据端口数量而与对应数量的用户连接。交换机本身也可以是用户。这些耦合节点或交换机目前是单独的设备,不过其强烈地被直接集成在所连接的设备或者用户中。通过所谓的VLST技术(超大规模集成)使得可以将交换机或者交换功能造价低廉地集成在单个用户或者自动化设备中。由此,在通信系统中由于更有利的布线实现了明显更大的扩张,因为总是仅仅从用户继续连接至用户。
在这种具有非常多用户的通信系统中,特别是在线形结构中,主动节点或者交换机带来了问题。如果一个用户失灵,则整条线失灵。在添加一个附加用户时也存在同样的问题,其中必须暂时断开通信系统。值得希望的是用一条冗余的路径将该线路闭合成一个环。其中,在网络连接上出现故障,例如一个用户断开或者失灵的情况下,数据交换可以另外通过剩下的网络连接线进行。不过,这种冗余路径在独立寻找目标和/或在广播寻址/多点传送寻址时会造成循环的数据电文。由于这种原因,在通信系统启动时,对该通信系统检查可能的循环并将通信系统在适当的位置上逻辑断开。仅仅在备用模式下使用冗余的路径,也就是说,在干扰时在重新配置范围内转接到该替换路径上。不过,通过该再配置造成的运行停顿对于自动化技术中的许多应用来说是不能承受的。
为了识别在通信系统中的循环,已知并且在标准IEEE 802.1Q中规定了一种方法。该方法也被称为“生成树”或“快速生成树”方法。通信系统的拓扑越简单或者通信系统越小,则可以越迅速地识别在通信系统中的故障并执行动态的再配置。该重新配置又包括了在通信网络内部检查循环,并且根据该拓扑和大小一直持续到两位数秒的范围。对于通信系统的环形结构,通过专门的方法有可能低于1秒。这种时间长度迄今为止在这种通信系统的应用领域是可以接受的。
不过,利用目前的方法在出现故障时不能在时间上完全无冲突地或者透明地转接。为了保证无冲突和透明度,必须持久地在分离的网络路径上冗余地传送数据电文。这种冗余网络路径的持久利用,在将数据电文发送的路径信息完全提前存放在通信系统的所有参与用户中时是可能的。DE10058524.8公开了这种尤其是对于等时实时以太网络通信的方法。反之,在具有独立路径搜索的数据通信、即可以寻址的数据通信中,则没有对应的技术方案公开。

发明内容
因此,本发明要解决的技术问题是,提供一种方法、一种通信系统以及一种通信系统的用户,其使得可以持久冗余地传送数据电文。
该技术问题是通过一种用于在尤其是用于实时通信的通信系统中提供和/或接收和/或传递数据电文的方法解决的,该通信系统具有借助于网络路径相互连接的多个用户,其中,每个用户配置为数据电文的发送器和/或接收器并且配备了唯一的地址,具有用于接收和/或传递的至少一个第一端口和一个第二端口,和至少一个用于提供和/或接收和/或传递设置用来冗余传递的数据电文的其它端口,以及用于存储所提供数据电文的至少一个发送地址的地址列表,并且其中,该通信系统具有至少一个带有逻辑中断的网络路径,所述方法具有如下步骤-标记设置用来冗余传递的数据电文,-将设置用来冗余传递的数据电文在用户的一个其它端口上提供到通信系统中,-在通过第一端口或第二端口接收一个设置用来冗余传递的数据电文并且通过该用户的一个其它端口传递时,或者在通过一个其它端口接收该数据电文并且通过该用户的第一端口或第二端口传递时,在用户处复制该数据电文,-在通过用户的第二端口接收或者传递设置用来冗余传递的数据电文时,通过用户的第一端口传递所复制的数据电文,-在通过用户的第一端口接收或者传递设置用来冗余传递的数据电文时,通过用户的第二端口传递所复制的数据电文。
作为本发明基础的技术问题,同样通过一种具有独立权利要求12的特征的、通信系统的用户,以及通过一种具有独立权利要求24特征的通信系统而得到解决。
按照本发明的一个优选的实施方式,利用唯一的报头标识来标记设置用来冗余传递的数据电文。此外,根据本发明,在通信系统中带有逻辑中断的网络路径仅仅由被标记为设置用来冗余传递的数据电文的数据电文使用。这种通过数据电文的报头中的标记而引入的数据电文类型,忽略那些不能用于没有标记或者具有其它标记的数据电文的网络路径的逻辑分离。这种标记可以配置给所有包含重要的或者关键、特别是时间上关键的数据并因此无论如何必须到达其接收者的数据电文。对这种也被称为R数据电文的数据电文的识别,硬件技术软件技术上都可行。由此,将在这种所谓的冗余网络路径、即具有逻辑中断的网络路径上的数据交换,优选地仅仅保留给关键的或者重要的数据。
按照本发明的另一个优选的实施方式,当在用户的一个其它端口上将被标记为设置用来冗余传递的数据电文提供到通信系统中时,在提供用户的地址表中记录将该数据电文提供到该通信系统的用户的发送地址以及一个附加标志。将数据电文提供到通信系统中总是通过用户的一个其它端口进行,即通过可能不传递冗余数据交换的端口之一进行。与此相反,用户的第一和第二端口原则上设计用来传递冗余的数据交换,并且针对交换机对应地标记。这意味着,每个用户知道两个设置来传递冗余数据交换的端口。用户所有其它的端口原则上不用来传递冗余的数据交换。这意味着,在通信系统中的带有逻辑中断的网络路径,按照本发明在该网络路径的两端分别连接在用户的一个设置用来传递冗余数据交换的端口上,因为只有被标记为设置用来冗余传递的数据电文才可以使用该网络路径。这还意味着,必要时可以在逻辑上断开连接两个设置用来传送冗余数据交换的端口的网络路径。除此之外,除了上面提到的限制条件,不是设置用来冗余传递的数据电文以及设置用来冗余传递的数据电文原则上都利用该用户的所有端口。
特别地,通过用户的一个其它端口将任意的数据电文、即设置用来冗余传递的数据电文和不是设置用来冗余传递的数据电文提供到通信系统中。通过在提供用户的相应地址表中记录该提供用户的发送地址以及一个附加标志,保证了可以可靠地识别循环的电文,由此,在随后的步骤中还可以将这种循环的电文有针对性地销毁,从而可以避免网络路径的有危害的过载。
特别优选的是,附加标志由可以取0或1的一个比特组成。在此,附加标志的记录可以意味着例如设置对应的、也被称为过滤器位(简称F位)的位,即将F位设置为值1,或者如果预先按照标准将F位存放值1,则设置F位也可以意味着设置为值0。如果在所属用户的地址表中存在一个附加标志,即设置了F位,则意味着对应的用户是提供用户。
按照本发明的另一个优选的实施方式,在用户的一个其它端口上接收被标记为设置用来冗余传递的数据电文时,检查该接收用户的地址表中是否具有将该数据电文提供到通信系统的用户的发送地址的记录以及一个附加标志,其中,如果不存在这种记录,则在接收用户的地址表中记录将该数据电文提供到通信系统的用户的发送地址和/或一个附加标志,并且传递有关数据电文,或者其中,如果存在这种记录,则传递有关数据电文。这意味着,在接收被标记为设置用来冗余传递的数据电文时,检查是否在地址表中记录了将该数据电文提供到通信系统的用户的发送地址。如果该接收端口是设置用于冗余传递的话,则另外再检查F位。如果在地址表中记录了该数据电文的发送地址并且F位被设置了,且该接收端口被设置用于冗余传递,则涉及的是一个不被传递的循环电文。在这种冗余端口上接收的数据电文的发送地址不被“学习”,即不将该发送地址和接收端口记录在地址表中。反之,如果该接收端口不是设置用于冗余传递,则在一个设置用来冗余传递的、并且在该接收端口提供到冗余通信系统内的数据电文中,仅仅将该数据电文的发送地址记录到地址表中并且设置F位。在这种情况下涉及的是提供点,即提供用户。此外, 在这种情况下,相应用户的、用于“学习”常规非冗余数据交换的地址的地址表不被改变。“学习”意味着,在接收数据电文时,在接收用户的地址表中既记录发送者的地址,又记录通过其接收该数据电文的端口。由此,可以将应该发送给对应发送者的数据电文有目的地进行传递。也就是说,“学习”指的是将该数据电文提供到通信系统中的用户的发送地址和通过其在对应用户处接收该数据电文的端口之间的关系。在这种情况下,不“学习”意味着在接收被标记为设置用来冗余传递的数据电文时,不象在其它数据电文中的情况那样记录对应的、通过其接收对应数据电文的端口。
如果在提供用户或者节点的一个冗余接收端口再次接收了一个数据电文,则利用该方法保证了随后无疑问地识别提供到冗余通信系统中的该数据电文,并可以因此进行过滤。
按照本发明的另一个优选的实施方式,在通过用户的第一端口或第二端口接收被标记为设置用来冗余传递的数据电文和/或被复制的数据电文时,检查该接收用户的地址表是否具有将该有关数据电文提供到通信系统的用户的发送地址的记录以及一个附加标志,其中,如果存在这种记录,则将有关数据电文和/或被复制的数据电文销毁,或者其中,如果不存在发送地址或存在发送地址而没有附加标志,则将有关数据电文和/或被复制的数据电文进行传递。在通过用户的第一端口或第二端口(即,通过用户的两个可能设置用来传递冗余数据交换的端口之一)接收被标记为设置用来冗余传递的数据电文时,通过在接收用户的对应地址表中检查该记录以及附加标志来识别并销毁循环的数据电文,使得其从通信系统中消失并且不进一步在通信系统中循环。反之,如果不存在这样的记录,则将对应的数据电文简单地进行传递,正如对于其余的数据电文设置的那样,在此不进行对应的“学习”。对于从被标记为设置用来冗余传递的数据电文的复制电文自然同样如此。在此,例如通过设置已经提及的过滤器位来实现该附加标志。
按照本发明的另一个优选实施方式,通信系统周期地工作,即,在具有例如特定时间长度的特定通信周期中进行数据传送。在此,在提供到该通信系统中时为数据电文、特别是被标记为设置用来冗余传递的数据电文分配一个当前的周期号以及一个帧ID。该周期号标志着通信系统的当前通信周期,并且用来识别数据电文的数据是过期的还是当前的。
按照本发明的另一个优选实施方式,数据电文、特别是被标记为设置用来冗余传递的数据电文的接收器将所接收的数据电文的当前周期号以及帧ID进行存储。此外,数据电文、特别是被标记为设置用来冗余传递的数据电文的接收器在接收该数据电文时将所接收的数据电文的周期号与在该接收器中存储的当前周期号进行比较,其中,如果两个被比较的周期号不一致,则该接收器在帧ID相同时采用所接收的数据电文的数据,或者,如果两个被比较的周期号一致,则该接收器忽略所接收的数据电文的数据和/或销毁该数据电文。由此,这种数据电文的接收器具备了这样的手段和信息,以便一方面将当前的数据电文与过时的数据电文区分开来,而另一方面采用对于当前数据电文的对应信息或者说数据,或者在已经实现的更新中将过时的数据或者说数据电文舍弃或销毁。由此,按照本发明,如果得到对应的硬件支持,则可以在分支位置透明地将被标记为设置用来冗余传递的数据电文分离成两个数据电文,并且通过接收两个数据电文在接收器处不需要附加的负载。对于周期性工作的通信系统,这种检查可以得到硬件的支持,不过也可以考虑软件支持,其中必须总是接收数据电文。在非周期性工作的通信系统中,也可能并可考虑软件支持识别当前或过时的数据电文。在接收器处对两个冗余的数据电文的软件处理,例如可以通过对数据电文的报头标识进行,并因此可以任意地使用。
此外,特别具有优势的是,可以将所公开的方法应用于自动系统,尤其是包装机械、出版、塑料喷射机器、纺织机械、印刷机、机床、机器人、处理系统(Handlingssystemen)、木材加工机械、玻璃加工机械、陶瓷加工机械以及升降工具中。


下面对照附图对本发明的优选实施方式作进一步的说明。图中图1表示本发明的通信系统的一种实施方式的框图,图2表示用于在一个冗余的接收端口接收被标记为设置用来冗余传递的数据电文的本发明方法的流程图,图3表示用于在一个非冗余的接收端口接收被标记为设置用来冗余传递的数据电文的本发明方法的流程图,图4表示用于在一个任意接收端口接收不是设置用来冗余传递的数据电文的本发明方法的流程图,图5、6、7和8表示在对被标记为设置用来冗余传递的数据电文按照本发明进行的直通、传递或复制时的可能情景,以及图9表示本发明方法的一种实施方式。
具体实施例方式
图1表示本发明的通信系统26的一种实施方式的框图。所示出的通信系统26例如表示一个分布的、实时临界的自动化系统。此外,所示通信系统26还是一个可连接通信网络,例如其是一个实时以太网系统。所示通信系统26是一个周期性工作的系统,即,在一个或者多个传送周期中进行数据传送。
示出的通信系统26由多个用户1、2、3、4和5组成,这些用户同时配置为数据电文的发送器和接收器。用户1、2、3、4和5例如可以实现为计算机,例如驱动器的其它自动化设备,或者单独的耦合单元、即交换机(优选为实时以太网交换机)。不过,通信系统26的每个用户1、2、3、4和5也可以具有一个集成在这些用户中的耦合单元,特别是实时以太网交换机,如对于用户1示例性表示的那样。出于概略表示的原因,图中放弃了对其余集成交换机的描绘。这些交换机用于提供和/或接收和/或传递数据电文,特别是设置用来冗余传递的数据电文。用户1、2、3、4和5也被称为网络节点。
本发明的通信系统26的每个用户1、2、3、4和5都具有一个地址表,为了清楚起见仅仅示出和标记了用户1的地址表27。此外,每个用户1、2、3、4和5具有多个端口,其中分别两个端口可能用于冗余的数据交换。相应用户的所有其它端口可能不用于冗余数据交换。为清楚起见,没有示出每个用户1、2、3、4和5配备的所有端口。例如,用户1具有设置用于冗余数据交换的端口8,以及不是设置用于冗余数据交换的端口7和23。特别是,用户1表示一个具有集成交换机的网络节点,例如自动化设备。这通过用户1的本地接口6表示出。本地接口、特别是本地接口6总是用户的可能不用于冗余数据交换的一个其它端口。用户2例如具有三个端口,其中端口10不是设置用于冗余的数据交换。端口11和12是用户2的可能用于冗余数据交换的两个端口。在此,用户2通过端口10利用网络连接9与端口7连接,并由此与用户1连接。用户5被表示为仅仅具有不是用于冗余数据交换的端口25。用户5通过端口25利用网络连接24与端口23连接,并由此与用户1连接。用户4例如具有三个端口14、15和22,其中,端口14和15是用户4的可能用于冗余数据交换的两个端口,而端口22表示用户4的不用于冗余数据交换的一个其它端口。用户4通过端口15和网络连接16与用户1的端口8连接。用户4还通过端口14和网络连接13与用户2的端口12连接。此外,用户3例如具有两个端口19和20,其中,端口20不是设置用于冗余的数据交换,并且通过该端口用户3借助于网络连接21与用户4的端口22连接。反之,用户3的端口19是设置用于冗余数据交换的,其中,用户3通过端口19和具有一个逻辑断开17的冗余网络路径18与用户2的端口11连接。在下文中概念“网络连接”和概念“网络路径”具有相同的含义。在下文中也将带有逻辑中断17的网络路径(如网络路径18)称为冗余的网络路径或者简称为冗余路径。如已经提到的那样,将每个网络用户(特别是交换机)的恰好一个端口对称为冗余数据交换的载体。例如将其称为R端口。一个用户的所有其它端口不是设置用于冗余数据交换并对应地进行标记。它们因此也被简称为nR端口。集成在设备中的交换机的本地接口、例如用户1的本地接口6同样是一个nR端口。
在所示出的、特别适合于实时通信的示例性通信系统中,既传送设置用来冗余传递的数据电文、即所谓的R电文,也传送不是设置用来冗余传递的数据电文、即所谓的nR电文。设置用来冗余传递的数据电文例如是临界的、特别是时间临界或者实时临界的数据电文,其必须在确定的时间到达确定的用户,如用户3。这种数据电文例如通过用户1的nR端口6提供。自然也可以将其它被视为重要或者关键的任意电文设置用来冗余传递。这些数据电文在例如通过用户1的nR端口6提供到通信网络26中时被对应地标记。这种标记例如可以通过一个特殊的报头标识得到保证。这种被标记的数据电文具有这样的特性,即,其忽略网络路径18的逻辑断开17,并且尽管有逻辑断开17仍然可以被利用。反之,其它不是设置用来冗余传递、也就是没有被对应标记的数据电文,则不能使用这种带有逻辑断开17的网络路径18。例如,如果在本例中网络路径18由于中断而失效,则将用户3与通信系统的其它部分断开。但是,通过经冗余网络路径18与用户2的连接,设置用来冗余传递的数据电文可以如此前一样地到达用户3。
在例如通过用户1的nR端口6将数据电文提供到通信系统26中时,在用户1的对应地址表27中进行记录。在提供或者接收不是设置用来冗余传递的数据电文时,对所提供或者接收的数据电文的相应发送地址进行“学习”。在“学习”中将所接收的数据电文的发送器的地址和该用户的、通过其接收该数据电文的端口记录在对应接收用户的地址表中。对于设置用来冗余传递的数据电文不进行这种“学习”。在这种情况下,仅仅将发送器的地址以及一个附加标记(例如过滤位的设置)记录在相应的地址表、如地址表27中。相反,在R电文的情况下,不记录该用户的、通过其接收该数据电文的端口。
对于在分离的路径上持久冗余传送数据电文的不可或缺的前提是,能够可靠识别并销毁循环的数据电文。为此,对于可靠的识别必须要求的是,在设置用来冗余传递的数据电文的提供点上将相应发送地址(也称为MAC源地址或简称源地址)连同一个附加标记(例如被设置的过滤位)存放在相应提供用户的地址表中。下面,结合对图2、3和4的描述解释对这种循环数据电文的识别和销毁的方法。
图2示出了在一个冗余接收端口上接收R电文以及随后的动作,特别是对循环的检查,即检查所接收的R电文是否是循环的电文。步骤30表示在用户的一个原则上设置用于冗余数据交换的端口、即所谓的R端口上接收一个R电文。在接收到该R数据电文之后,在步骤32中用其源地址检查接收用户的对应地址表,看所接收的R电文的发送地址是否已经在地址表中。如果找到该源地址,则在步骤34中检查是否例如将属于该有效地址记录的过滤位设置为值1。如果是,则意味着该对应的R电文已经在有关用户处被接收过一次,也就是涉及的是将电文提供到通信系统中的提供点,即涉及的是一个循环的数据电文。因此,在步骤36中将该有关R电文丢弃。反之,根据步骤34中的检查对应的过滤位没有被设置为值1,或者根据步骤32中的检查在对应的地址表中没有所接收的R电文的有效地址记录,则将对应的R电文通过用户的设置用于传递的端口进行传递,并在必要时事先进行复制。对于复制过程以及对R电文进行复制的条件的解释,见对附图5至8的说明。在完全接收R电文之前,按照步骤32以及步骤34进行检查。
图3示出了在一个非冗余接收端口上接收R电文以及随后的动作,特别是标记将R电文提供到通信系统中的提供点。步骤40表示在用户的一个其它端口、即不是设置用于冗余数据交换的端口(即所谓的nR端口)上接收一个R电文。在接收了该R电文之后,在步骤42中首先利用其源地址检查该R电文的发送器的地址是否在用户的对应地址表中。如果这种有效的地址记录、即发送地址在地址表中,则在步骤48中在接收用户的地址表中将属于该地址记录的F位设置为值1,然后在步骤50中将R电文通过为此设置的端口进行传递。反之,如果对于所接收的R电文还没有源地址,如步骤42中检查的那样,则在步骤44中查看在对应用户的地址表中是否还存在用于新地址记录的空闲存储空间。如果存在这样的存储空间,则在步骤46中记录所接收的数据电文的发送器的地址、即源地址,并在步骤48中将所属的F位设置为值1,由此,在步骤50中将所接收的R电文通过为此设置的端口进行传递之前,标记出将该R电文提供到通信系统中的提供点。反之,如果在地址表中既没有有效的源地址(如在步骤42中检查的那样),又没有空闲的存储空间(如在步骤44中验证的那样),则进行中断,并在步骤52中向用户输出一个消息、尤其是故障提示。随后在步骤54中丢弃该R电文。这种情况例如出现在通过一个nR端口提供R电文的时候,这表示了一种少见的故障情况。如已经提及的,然后不再传递对应的R电文,并通过中断通知用户。然后可以对地址表进行重新配置,从而可以提供空闲的存储空间。在这种故障情况下不允许传递对应的R电文,因为不再可以没有疑问地检测到作为可能循环数据电文的R数据电文,因为不能在提供用户的地址表中存放源地址和被设置的F位。
除了上面描述的故障情况之外,在传递这种R电文时,在图3中描述的情况中必要时也对该R电文进行复制,该复制的条件以及其过程在对附图5至8的描述中说明。
图4示出了在一个任意接收端口上接收不是设置用来冗余传递的数据电文、即nR电文,即,既在R端口上接收又在nR端口上接收。不过,在执行接收之后的步骤之前必须首先完全接收该nR电文,以便能确保其不是一个有问题的电文(周期冗余校验-CRC检查)。步骤60表示接收这样的nR电文。然后在步骤62中检查,在地址表中是否存在所接收的nR电文的发送器的地址并且该记录是否有效,即是否已经“学习”了该对应的地址。如果这种记录存在并有效,则在步骤64中必要时更新对应的记录。例如,对应记录的更新对于这样的情况是必要的,即,所接收的nR电文是通过不是记录在地址表中的另一个端口接收的。然后,在步骤72中将该nR电文通过为此设置的用户端口进行传递。反之,如果在接收用户的地址表中还没有有效的源地址,如在步骤62中验证的那样,则在步骤66中检查是否在对应用户的地址表中存在空闲的存储空间。如果存在,则在步骤68中在地址表中加入一个新的记录,即“学习”nR电文的源地址。这意味着,在用户的地址表中记录所接收的nR电文的发送器的地址和通过其接收该nR电文的端口。此外,在步骤70中将对应存储空间的过滤位设置为0,然后在步骤72中相应地传递该nR电文。如果在地址表中既没有象在步骤62中检查的那样具有有效记录,也没有象在步骤66中检查的那样具有空闲存储空间,则在步骤72中相应传递所接收的nR电文而没有其它动作。
图5、6、7和8示出了在对被标记为设置用来冗余传递的数据电文按照本发明进行的直通、传递或复制时的可能情景。
图5示出一个用户80,其具有例如两个设置用于非冗余数据交换的端口(端口82和端口86)以及两个设置用于冗余数据交换的端口(端口84和88)。在图5中例如通过端口82接收R电文90并且要通过端口86传递。因为用来接收R电文90的以及用来传递R电文的都是nR端口,因此不进行别的动作而是将R电文90通过用户80进行直接传递。
图6示出了具有和图5中已经提到的同样标记的同一用户80。接收端口还是nR端口82。不过,在该情况下应当传递所接收的R电文92的端口是设置用于冗余数据交换的R端口88。在这种情况下,按照本发明自动复制所接收的R电文92,并另外作为R电文94通过第二R端口84传递,从而将原始的R电文92分成两个电文。在此,复制的R电文94是原始R电文92的精确拷贝,因此与其没有差别。由此实现了对所接收的R电文92进行冗余的传送。
图7示出了具有与图5和6中已经提到的同样标记的同一用户80,只是在这种情况下R电文96是通过R端口84接收的。在这种情况下,所接收的R电文96自动通过端口88作为R电文98被传递。
图8示出具有与图5、6和7中已经提到的同样标记的同一用户80。在这种情况下R电文100通过R端口84接收并应当通过nR端口86传递。在这种情况下自动复制R电文100,并且作为R电文102并行地另外通过用户80的R端口88传递。按照本发明,在这种情况下也将所接收的R电文100分离来用于冗余的传递。
图9示例性地示出了本发明方法的一种实施方式。为此,参考图1中具有所有相同标记的周期通信系统26。例如,将R电文110通过用户1的本地接口(nR端口6)提供到通信系统26中。在此,向R电文110分配当前通信周期的周期号。R电文110的接收器应该是用户3,例如一个自动化设备、特别是控制器。在通过nR端口6提供R电文110之后,在用户1的地址表27中产生一个对应的记录,该记录由该R电文的发送地址、即用户1的地址以及一个所属的、被设置为值1的F位组成。R电文110设置用来通过用户1的nR端口7传递,并随后通过网络连接9和nR端口10传递到用户2。在用户1中不进行复制,因为提供和传递端口分别是nR端口。
在用户2中将R电文110设置用于通过R端口11传递。因为用户2的接收端口10是一个nR端口,而传递端口11是一个R端口,因此自动复制R电文110。在此,将原始的R电文110进一步通过R端口11和带有逻辑断开17的冗余路径18传递至用户3的R端口19、即设置的接收器。在该端口中对电文进行相应的处理,即,首先由用户3将存储在R电文110中的当前通信周期的周期号进行存储。
在将R电文110通过R端口11传递至用户3期间,自动将复制的R电文120通过用户2的第二R端口12和网络连接13传递到用户4的R端口14。将R电文120从用户4通过nR端口22和网络连接21传递到接收器(用户3)的nR端口20。在用户3接收R电文120时,用户3首先检查通过nR端口20到来的复制R电文120的周期号,并在原始的R电文110已经到达用户3并且其数据由用户3采用之后,在当前通信周期中已经对相应的数据进行了更新,也就是说由用户3存储的当前周期号与所接收的复制R电文120的周期号一致。因此,由用户3销毁复制R电文120的、表示对R电文110精确拷贝的数据。
在用户4中接收复制的R电文120时,因为接收端口14是一个R端口而设置用来传递R电文120的端口22是一个nR端口,因此与此并行地自动进行对R电文120的另一个复制,其中,将复制的R电文130自动通过用户4的第二R端口15借助于网络连接16经R端口8传递至用户1。
在通过R端口接收R电文时、在本例中是通过用户1的R端口8接收R电文130,按照本发明在相应的地址表、这里是在用户1的地址表27中检查所接收的R电文(这里为R电文130)的发送地址是否已经存在。这里是这样,因为所接收的R电文130是原始R电文110的拷贝。此外,也将过滤位设置为值1,因为R电文110是在用户1通过nR端口6提供到通信系统26中的。由此,用户1可以明确地将R电文130识别为循环的数据电文并将R电文130销毁。
按照本发明的方法不以交换机中数据电文的存储和传递方法为前提,还可以将数据电文尽可能迅速地按抄近路方法传递。为了可靠地销毁虚假的循环数据电文,在通信系统(特别是环形结构、例如通信系统26)内部仅仅需要一个交换机工作在存储和传递模式下。
总之,利用本发明的方法可以在分离的路径上持久冗余地传送数据电文,其中可以可靠地识别并销毁循环的数据电文。此外,分离为两个数据电文是在对应的分支位置上透明进行的,并且通过接收两个相同的数据电文、例如通过将当前周期号分配给在周期性通信系统26中接收的数据电文,在接收器处不形成附加的负载。在非周期性的通信系统中,这点可以通过软件技术的处理、例如通过数据电文的报头识别而同样得到保证。此外,尤其是不改变该通信系统26的、涉及在各用户1,2,3,4,5中、特别是交换机中为整个剩余、非冗余数据交换“学习”地址的特性。
权利要求
1.一种用于在尤其是用于实时通信的通信系统(26)中提供和/或接收和/或传递数据电文的方法,该通信系统具有借助于网络路径(9,13,16,18,21,24)相互连接的多个用户(1,2,3,4,5),其中,每个用户(1,2,3,4,5)配置为数据电文的发送器和/或接收器并且配备了唯一的地址,具有用于接收和/或传递的至少一个第一端口(12,15,19)和一个第二端口(8,11,14),和至少一个用于提供和/或接收和/或传递设置用来冗余传递的数据电文的其它端口(6,7,10,20,22,23,25),以及用于存储所提供的数据电文的至少一个发送地址的地址表,并且其中,该通信系统(26)具有至少一个带有逻辑中断(17)的网络路径(18),所述方法具有如下步骤-标记设置用来冗余传递的数据电文,-在用户(1,2,3,4,5)的一个其它端口(6,7,10,20,22,23,25)上将设置用来冗余传递的数据电文提供到所述通信系统(26)中,-在通过第一端口(12,15,19)或第二端口(8,11,14)接收一个设置用来冗余传递的数据电文并且通过用户(1,2,3,4,5)的一个其它端口(6,7,10,20,22,23,25)传递时,或者在通过一个其它端口(6,7,10,20,22,23,25)接收该数据电文并且通过用户(1,2,3,4,5)的第一端口(12,15,19)或第二端口(8,11,14)传递时,在用户(1,2,3,4,5)处复制该数据电文,-在通过用户(1,2,3,4,5)的第二端口(8,11,14)接收或者传递设置用来冗余传递的数据电文时,通过用户(1,2,3,4,5)的第一端口(12,15,19)传递所复制的数据电文,-在通过用户(1,2,3,4,5)的第一端口(12,15,19)接收或者传递设置用来冗余传递的数据电文时,通过用户(1,2,3,4,5)的第二端口(8,11,14)传递所复制的数据电文。
2.根据权利要求1所述的方法,其特征在于,用唯一的报头标识来标记所述设置用来冗余传递的数据电文。
3.根据权利要求1或2所述的方法,其特征在于,所述带有逻辑中断(17)的网络路径(18)仅仅由被标记为设置用来冗余传递的数据电文使用。
4.根据上述权利要求中任一项所述的方法,其特征在于,在用户(1,2,3,4,5)的一个其它端口(6,7,10,20,22,23,25)上将被标记为设置用来冗余传递的数据电文提供到通信系统(26)中时,在提供用户(1,2,3,4,5)的地址表中记录将该数据电文提供到该通信系统(26)的用户(1,2,3,4,5)的发送地址以及一个附加标志。
5.根据权利要求4所述的方法,其特征在于,所述附加标志由可以取0或1的一个比特组成。
6.根据上述权利要求中任一项所述的方法,其特征在于,在所述用户(1,2,3,4,5)的一个其它端口(6,7,10,20,22,23,25)上接收被标记为设置用来冗余传递的数据电文时,检查接收用户的地址表是否具有将该数据电文提供到通信系统(26)的用户(1,2,3,4,5)的发送地址的记录以及一个附加标志,其中,如果不存在这种记录,则在接收用户(1,2,3,4,5)的地址表中记录将该数据电文提供到通信系统(26)的用户(1,2,3,4,5)的发送地址和/或一个附加标志,并且传递该数据电文,或者,其中,如果存在这种记录,则传递该数据电文。
7.根据上述权利要求中任一项所述的方法,其特征在于,在通过用户(1,2,3,4,5)的第一端口(12,15,19)或第二端口(8,11,14)接收被标记为设置用来冗余传递的数据电文和/或复制的数据电文时,检查接收用户的地址表是否具有将该数据电文提供到通信系统(26)的用户(1,2,3,4,5)的发送地址的记录以及一个附加标志,其中,如果存在这种记录,则将该数据电文和/或复制的数据电文销毁,或者,其中,如果不存在发送地址或存在发送地址而没有附加标志,则传递该数据电文和/或复制的数据电文。
8.根据上述权利要求中任一项所述的方法,其特征在于,所述通信系统(26)周期地工作。
9.根据权利要求8所述的方法,其特征在于,为被标记为设置用来冗余传递的数据电文在提供到所述通信系统(26)中时分配一个当前的周期号。
10.根据权利要求8或9所述的方法,其特征在于,被标记为设置用来冗余传递的数据电文的接收器存储所接收的数据电文的该当前周期号。
11.根据权利要求8至10中任一项所述的方法,其特征在于,被标记为设置用来冗余传递的数据电文的接收器在接收该数据电文时将所接收的数据电文的周期号与在该接收器中存储的当前周期号进行比较,其中,如果两个被比较的周期号不一致,则该接收器采用所接收的数据电文的数据,或者,如果两个被比较的周期号一致,则该接收器忽略所接收的数据电文的数据和/或销毁该数据电文。
12.一种用于通信系统(26)、尤其是用于实时通信的通信系统的用户,其中,所述用户(1,2,3,4,5)配置为数据电文的发送器和/或接收器并且配备了唯一的地址,具有用于接收和/或传递的至少一个第一端口(12,15,19)和一个第二端口(8,11,14),和至少一个用于提供和/或接收和/或传递设置用来冗余传递的数据电文的其它端口(6,7,10,20,22,23,25),以及一个用来存储所提供的数据电文的至少一个发送地址的地址表,所述用户包括-用于标记设置用来冗余传递的数据电文的装置,-用于在用户(1,2,3,4,5)的一个其它端口(6,7,10,20,22,23,25)上将设置用来冗余传递的数据电文提供到通信系统(26)中的装置,-用于在通过第一端口(12,15,19)或第二端口(8,11,14)接收一个设置用来冗余传递的数据电文并且通过用户(1,2,3,4,5)的一个其它端口(6,7,10,20,22,23,25)传递时,或者在通过一个其它端口(6,7,10,20,22,23,25)接收该数据电文并且通过用户(1,2,3,4,5)的第一端口(12,15,19)或第二端口(8,11,14)传递时,在用户(1,2,3,4,5)处复制该数据电文的装置,-用于在通过用户(1,2,3,4,5)的第二端口(8,11,14)接收或者传递设置用来冗余传递的数据电文时,通过用户(1,2,3,4,5)的第一端口(12,15,19)传递所复制的数据电文的装置,-用于在通过用户(1,2,3,4,5)的第一端口(12,15,19)接收或者传递设置用来冗余传递的数据电文时,通过第二端口(8,11,14)传递所复制的数据电文的装置。
13.根据权利要求12所述的用户,其特征在于,所述用户(1,2,3,4,5)利用唯一的报头标识来标记所述设置用来冗余传递的数据电文。
14.根据权利要求12或13所述的用户,其特征在于,所述用户(1,2,3,4,5)在将被标记为设置用来冗余传递的数据电文在一个其它端口(6,7,10,20,22,23,25)上提供到通信系统(26)中时,在该提供用户(1,2,3,4,5)的地址表中记录该提供用户(1,2,3,4,5)的发送地址以及一个附加标志。
15.根据权利要求12至14中任一项所述的用户,其特征在于,所述用户(1,2,3,4,5)在一个其它端口(6,7,10,20,22,23,25)上接收被标记为设置用来冗余传递的数据电文时,检查接收用户的地址表是否具有将该数据电文提供到通信系统(26)的用户(1,2,3,4,5)的发送地址的记录以及一个附加标志,其中,如果不存在这种记录,则该接收用户在该地址表中记录将该数据电文提供到通信系统(26)的用户(1,2,3,4,5)的发送地址和/或一个附加标志,并且传递该数据电文,或者,其中,如果存在这种记录,则该接收用户(1,2,3,4,5)传递该数据电文。
16.根据权利要求12至15中任一项所述的用户,其特征在于,所述用户(1,2,3,4,5)在通过第一端口(12,15,19)或第二端口(8,11,14)接收被标记为设置用来冗余传递的数据电文和/或复制的数据电文时,检查该接收用户的地址表是否具有将该数据电文提供到通信系统(26)的用户(1,2,3,4,5)的发送地址的记录以及一个附加标志,其中,如果存在这种记录,则该接收用户(1,2,3,4,5)将该数据电文和/或复制的数据电文销毁,或者,其中,如果不存在发送地址或存在发送地址而没有附加标志,则该接收用户(1,2,3,4,5)将该数据电文和/或被复制的数据电文进行传递。
17.根据权利要求12至16中任一项所述的用户,其特征在于,所述用户(1,2,3,4,5)是通信系统(26)的用户,其中,所述通信系统(26)周期地工作。
18.根据权利要求17所述的用户,其特征在于,所述用户(1,2,3,4,5)为被标记为设置用来冗余传递的数据电文在提供到所述通信系统(26)中时分配一个当前的周期号。
19.根据权利要求17或18所述的用户,其特征在于,所述用户(1,2,3,4,5)作为被标记为设置用来冗余传递的数据电文的接收器,将所接收的数据电文的该当前周期号进行存储。
20.根据权利要求17至19中任一项所述的用户,其特征在于,所述用户(1,2,3,4,5)作为被标记为设置用来冗余传递的数据电文的接收器,在接收该数据电文时将所接收的数据电文的周期号与在该接收器中存储的当前周期号进行比较,其中,如果两个被比较的周期号不一致,则该接收器采用所接收的数据电文的数据,或者,如果两个被比较的周期号一致,则该接收器忽略所接收的数据电文的数据和/或销毁该数据电文。
21.根据权利要求12至20中任一项所述的用户,其特征在于,所述用户(1,2,3,4,5)是具有集成耦合单元的网络节点。
22.根据权利要求21所述的用户,其特征在于,所述集成耦合单元是实时以太网交换机。
23.根据权利要求12至22中任一项所述的用户,其特征在于,所述用户(1,2,3,4,5)是自动化设备。
24.一种具有多个根据权利要求12至23中任一项所述用户的通信系统。
25.根据权利要求24所述的通信系统,其特征在于,所述通信系统具有至少一个带有逻辑中断(17)的网络路径(18),其中,所述带有逻辑中断(17)的网络路径(18)仅仅由被标记为设置用来冗余传递的数据电文使用。
26.根据权利要求24或25所述的通信系统,其特征在于,所述通信系统是一个以太网类型或者实时以太网类型的可连接通信系统。
27.根据权利要求24至26中任一项所述的通信系统,其特征在于,所述通信系统是自动化系统。
全文摘要
利用本发明的方法可以在分离的路径上持久冗余地传送数据电文,其中可以可靠地识别并销毁循环的数据电文。此外,分离为两个数据电文是在对应的分支位置上透明进行的,并且通过接收两个相同的数据电文、例如通过将当前周期号分配给在周期性通信系统(26)中接收的数据电文,在接收器处不形成附加的负载。在非周期性的通信系统中,这点可以通过软件技术的处理、例如通过数据电文的报头识别而同样得到保证。此外,尤其是不改变该通信系统(26)的、涉及在各用户(1,2,3,4,5)中、特别是交换机中为整个剩余、非冗余数据交换“学习”地址的特性。
文档编号H04L12/56GK1682503SQ03822157
公开日2005年10月12日 申请日期2003年9月5日 优先权日2002年9月18日
发明者迪特尔·布吕克纳, 迪特尔·克洛茨, 卡茨-海因茨·克劳斯 申请人:西门子公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1