CN106576082A - 用于冗余以太网网络的硬件协助 - Google Patents
用于冗余以太网网络的硬件协助 Download PDFInfo
- Publication number
- CN106576082A CN106576082A CN201580044842.XA CN201580044842A CN106576082A CN 106576082 A CN106576082 A CN 106576082A CN 201580044842 A CN201580044842 A CN 201580044842A CN 106576082 A CN106576082 A CN 106576082A
- Authority
- CN
- China
- Prior art keywords
- downlink packets
- packet
- ethernet interface
- abandoned
- uplink packet
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 claims abstract description 57
- 238000001914 filtration Methods 0.000 claims abstract description 12
- 238000004891 communication Methods 0.000 claims description 31
- 230000005540 biological transmission Effects 0.000 claims description 19
- 230000004044 response Effects 0.000 claims description 16
- 238000012545 processing Methods 0.000 claims description 14
- 230000000977 initiatory effect Effects 0.000 claims description 3
- 230000008878 coupling Effects 0.000 claims 1
- 238000010168 coupling process Methods 0.000 claims 1
- 238000005859 coupling reaction Methods 0.000 claims 1
- 238000013507 mapping Methods 0.000 abstract description 3
- 230000010247 heart contraction Effects 0.000 description 35
- 230000008569 process Effects 0.000 description 26
- 238000001152 differential interference contrast microscopy Methods 0.000 description 24
- 238000003860 storage Methods 0.000 description 13
- 238000007781 pre-processing Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 8
- 238000012360 testing method Methods 0.000 description 7
- 238000012797 qualification Methods 0.000 description 6
- 238000007689 inspection Methods 0.000 description 5
- WURBVZBTWMNKQT-UHFFFAOYSA-N 1-(4-chlorophenoxy)-3,3-dimethyl-1-(1,2,4-triazol-1-yl)butan-2-one Chemical compound C1=NC=NN1C(C(=O)C(C)(C)C)OC1=CC=C(Cl)C=C1 WURBVZBTWMNKQT-UHFFFAOYSA-N 0.000 description 4
- RTZKZFJDLAIYFH-UHFFFAOYSA-N Diethyl ether Chemical compound CCOCC RTZKZFJDLAIYFH-UHFFFAOYSA-N 0.000 description 4
- 230000008859 change Effects 0.000 description 4
- 230000036541 health Effects 0.000 description 4
- 230000003139 buffering effect Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 206010022000 influenza Diseases 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 230000037361 pathway Effects 0.000 description 2
- 230000002265 prevention Effects 0.000 description 2
- 238000006424 Flood reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000006073 displacement reaction Methods 0.000 description 1
- 230000008030 elimination Effects 0.000 description 1
- 238000003379 elimination reaction Methods 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 230000002349 favourable effect Effects 0.000 description 1
- 238000010304 firing Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000004886 process control Methods 0.000 description 1
- 230000008439 repair process Effects 0.000 description 1
- GOLXNESZZPUPJE-UHFFFAOYSA-N spiromesifen Chemical compound CC1=CC(C)=CC(C)=C1C(C(O1)=O)=C(OC(=O)CC(C)(C)C)C11CCCC1 GOLXNESZZPUPJE-UHFFFAOYSA-N 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L12/00—Data switching networks
- H04L12/28—Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
- H04L12/40—Bus networks
- H04L12/40169—Flexible bus arrangements
- H04L12/40176—Flexible bus arrangements involving redundancy
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/55—Prevention, detection or correction of errors
- H04L49/557—Error correction, e.g. fault recovery or fault tolerance
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0227—Filtering policies
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/16—Implementing security features at a particular protocol layer
- H04L63/164—Implementing security features at a particular protocol layer at the network layer
-
- 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
Abstract
一种方法包括从多个物理以太网接口(130,330a‑330b)接收(505)下行链路分组,并且基于分组过滤准则来选择性地丢弃(515)下行链路分组中的一些。该方法还包括使用未丢弃的下行链路分组中的地址信息来更新(535)网络连接性数据库(487)。该方法还包括使用数据库映射(540)用于未丢弃的下行链路分组中的每个的路径,以及将未丢弃的下行链路分组发射(545)到单个网络接口(113)。该方法还可以包括从单个网络接口接收(605)上行链路分组,基于数据库中的信息从多个物理以太网接口中选择(630)主物理以太网接口,以及通过所选择的主物理以太网接口发射(650)上行链路分组。
Description
技术领域
本公开一般地涉及以太网网络。更具体而言,本公开涉及用于冗余以太网网络的硬件协助。
背景技术
在工业过程控制和自动化系统的设备中,网络冗余和容错经常是希望的。例如,冗余通常有助于减少对工业过程的控制或查看的丢失。存在用于在以太网网络中实现冗余的各种技术,诸如来自霍尼韦尔国际公司的容错以太网(FTE)网络的实现。在此方法中,将代码插入到设备的操作系统(OS)的驱动器中。在以太网网络中实现冗余的另一示例在否则将是标准的以太网网络接口卡(NIC)的事物中添加中间驱动器。
设备的OS的更新和改变频繁发生。由于这些频繁的改变,经常需要额外的工作以便更新由OS所使用的驱动器。而且,经常需要进行资格测试,以确保OS中或NIC中的驱动器之间的兼容性。此外,某些操作系统是开放源码的,并且因此受制于开放的软件规则。开放的软件规则可能要求发布任何内核模式驱动器,这通常与开发者使其软件的细节保持机密或安全的愿望相冲突。
发明内容
本公开提供了一种用于冗余以太网网络的硬件协助。
在第一实施例中,一种方法包括:从多个物理以太网接口接收下行链路分组,并且基于分组过滤准则来选择性地丢弃下行链路分组中的一些。该方法还包括使用未丢弃的下行链路分组中的地址信息来更新网络连接性数据库。该方法还包括使用数据库来映射用于未丢弃的下行链路分组中的每个的路径,以及将未丢弃的下行链路分组发射到单个网络接口。
在第二实施例中,一种装置包括:多个控制防火墙引擎,其被配置成从多个物理以太网接口接收下行链路分组,并且基于分组过滤准则来选择性地丢弃下行链路分组中的一些。控制防火墙引擎中的每个被配置成耦合到物理以太网接口中的相应一个。该装置还包括至少一个处理设备,其被配置成使用未丢弃的下行链路分组中的地址信息来更新网络连接性数据库,使用数据库来映射用于未丢弃的下行链路分组中的每个的路径,并且发起未丢弃的下行链路分组到单个网络接口的传输。
在第三实施例中,一种系统包括被配置成耦合到多个以太网通信链路的多个物理以太网接口。该系统还包括具有多个控制防火墙引擎和至少一个处理设备的硬件协助设备。控制防火墙引擎被配置成从物理以太网接口接收下行链路分组,并且基于分组过滤准则来选择性地丢弃下行链路分组中的一些。控制防火墙引擎中的每个被配置成耦合到物理以太网接口中的相应一个。至少一个处理设备被配置成使用未丢弃的下行链路分组中的地址信息来更新网络连接性数据库,使用数据库映射用于未丢弃的下行链路分组中的每个的路径,并且发起未丢弃的下行链路分组到单个网络接口的传输。
根据下面各图、描述和权利要求,其它技术特征对于本领域技术人员来说可能是显而易见的。
附图说明
为了更完整地理解本公开及其特征,现在参考结合附图进行的以下描述,其中:
图1A和图1B示出了根据本公开的第一示例冗余以太网网络的一部分的细节;
图2A和图2B示出了根据本公开的第二示例冗余以太网网络的一部分的细节;
图3A和图3B示出了根据本公开的包括硬件协助的示例冗余以太网网络的一部分的细节;
图4示出了根据本公开的用于冗余以太网网络的示例硬件协助;
图5示出了根据本公开的用于冗余以太网网络中的下行链路接收处理的示例方法;
图6示出了根据本公开的用于冗余以太网网络中的上行链路传输处理的示例方法;和
图7示出了根据本公开的用于选择性地发射上行链路分组的示例方法。
具体实施方式
下面讨论的图1A至图7以及用于在本专利文档中描述本发明的原理的各种示例仅仅作为例证,并且不应以任何方式将其解释为限制本发明的范围。本领域技术人员将理解:可以以任何合适的方式以及在任何类型的适当布置的设备或系统中实现本发明的原理。
图1A和图1B示出了根据本公开的第一示例冗余以太网网络101的一部分的细节。如图1A中所示,网络101包括通过冗余以太网链路访问以太网网络的主计算单元(MCU)110。对以太网网络的访问使得作为以太网节点(诸如单个连接以太网节点)的MCU 110能够与网络中的其它以太网节点通信。每个以太网链路包括媒体访问控制器(MAC)120,物理以太网接口(PHY)130,以太网缆线140和外部控制防火墙150。在一些实施例中,以太网网络表示来自霍尼韦尔国际公司的容错以太网(FTE)。(例如在美国专利号7,688,818中所描述的,其通过引用整体并入本文)。在FTE网络中,可以将诸如绿色和黄色之类的颜色用于区分FTE网络内的各种冗余连接对中的连接。在下面的描述中,可以参考FTE网络中的绿色和黄色部件——然而这仅仅是用于说明并且不将本公开限制到任何特定的缆线颜色或以太网网络类型。
MCU 110选择主路径,通过所述主路径来向以太网网络发射上行链路分组。例如,MCU 110可以基于诸如哪个路径当前是最佳路径之类的各种准则来选择它的“黄色”或“绿色”以太网链路作为用于上行链路通信的主路径。作为特定示例,MCU 110可以选择“绿色”以太网链路作为主路径。在这种情况下,MCU 110经由“绿色”MAC 120和“绿色”PHY 130发射上行链路分组,其可以包括以太网物理层发射机和接收机或收发机。绿色PHY 130通过“绿色”以太网缆线140将上行链路分组发射到“绿色”控制防火墙150。对于“黄色”路径可以发生类似的过程。MCU 110可以确定所选择的主路径阻塞、出故障或因为发射上行链路分组而以其它方式受损,然后将上行链路分组重新路由到其它以太网链路。另外,MCU 110可以使用“黄色”目的地MAC地址将上行链路分组发射到“绿色”控制防火墙150。对于“黄色”路径可以发生类似的过程。路径和目的地地址的组合为FTE中的分组提供了四个可行的路径。
每个FTE节点通过周期性地发送“心跳”或“信标”分组来确定主路径,该“心跳”或“信标”分组包含该FTE节点所听到的路径的健康。响应于接收到这些“心跳”或“信标”分组,FTE节点更新MAC地址解析表(MART)。当进行发射时,将该表用作确定要被选择作为主路径的健康路径的参考。
MCU 110接受来自“黄色”和“绿色”以太网链路路径两者的下行链路通信。在每个路径中,下行链路分组从控制防火墙150流到以太网缆线140,然后到PHY 130,PHY 130将下行链路分组转发到MAC 120以用于递送到MCU 110。
MCU 110表示通过以太网网络进行通信的任何合适的设备,例如过程控制器、服务器、操作员站或者工业过程控制和自动化系统中的其它设备。每个MAC 120包括用于提供媒体访问控制器功能的任何合适的结构。每个PHY 130包括用于提供物理以太网接口功能的任何合适的结构。每个以太网缆线140包括用于上行链路通信170的布线142和用于下行链路通信175的布线144。每个以太网缆线140表示任何合适的以太网缆线,例如类别5(Cat5)或类别6(Cat6)缆线。每个控制防火墙150包括用于通过以太网网络发射和接收的任何合适的结构,例如以太网接收机和以太网发射机或以太网收发机。作为特定示例,每个控制防火墙150可以表示来自霍尼韦尔国际公司的CF9防火墙(例如在美国专利号7,593,409中所描述的,其通过引用整体并入本文)。
图1B中示出了示例MCU 110的细节。如图1B中所示,MCU 110包括中央处理单元(CPU)111,多个网络接口卡(NIC)113,NIC驱动器115,TCP/IP引擎117和操作系统(OS)119。CPU 111耦合到MCU 110中的其它部件113-119。CPU 111包括至少一个处理设备,例如x86处理器或POWERPC。可以为每个冗余以太网链路提供NIC 113。
可以将代码160插入到标准NIC驱动器115中以使得CPU 111能够执行通过FTE或其它冗余以太网网络进行通信所需的各种过程。然而,当更新OS 119时,可能还需要更新代码160。这可能要求资格测试或其它测试以确保代码160与更新的OS 119的适当操作,并且确保NIC 113和它的驱动器115之间的兼容性。此外,在CPU 111正在执行代码160时,CPU 111内较少的处理资源可用于执行操作系统119或其它应用(或者反之亦然)。
在一些情况下,NIC 113可以在以太网系统中接收广播的洪流(flood)。该洪流可以淹没NIC 113,从而防止MCU 110接收除了该广播洪流之外的任何通信。该洪流还可以使CPU 111连续处理以太网分组,从而防止CPU 111执行任何其它过程,例如OS 119或其它应用。
图2A和图2B示出了根据本公开的第二示例冗余以太网网络201的一部分的细节。如图2A中所示,MCU 210经由预处理硬件单元200在网络上通信。预处理硬件单元200对MCU210和冗余以太网PHY 130之间的分组执行各种过程。在一些实施例中,预处理硬件单元200可以使用现场可编程门阵列(FPGA)来实现。在此示例中,预处理硬件单元200包括三个MAC220a-220c和软核处理器280。MAC 220a-220c分别耦合到第一以太网链路、第二以太网链路和MCU 210。
预处理硬件单元200执行各种过程以支持MCU 210和PHY 130之间的上行链路通信270和下行链路通信275。例如,预处理硬件单元200选择主路径,通过该主路径传输去往来自以太网网络201的上行链路分组。当用于MCU 210的下行链路分组出现在上层PHY 130处时,MAC 220a从上层PHY 130取回分组,预处理硬件单元200对该分组执行适当的过程(比如分组过滤),并且MAC 220c将下行链路分组发射到MCU 210。可以以类似的方式使用MAC220b。当准备好发射来自MCU 210的上行链路分组时,MAC 220c从MCU 210取回上行链路分组,预处理硬件单元200对分组执行适当的过程(例如选择“黄色”或“绿色”MAC或以太网链路以用于输出分组),并且所选择的MAC 220或220b将上行链路分组发射到所选择的以太网链路的对应PHY 130。
图2B示出了图2A的MCU 210。如图2B中所示,MCU 210包括CPU 111,NIC 113和OS119。OS 119包括标准NIC驱动器115和TCP/IP引擎117。MCU 210不包括任何FTE或在标准NIC驱动器115或中间驱动器内添加的其它代码160。NIC 113发射和接收去往和来自MAC 220c的上行链路和下行链路通信。
取决于实现,此方法可以提供各种优点。例如,预处理硬件单元200可以通过从MCU210中去除某些处理来减少CPU 111上的处理负载。作为特定示例,MCU 210可以不具有对代码160或相关驱动器的需要。在这样的MCU 210中,CPU 111可以更快地执行OS 119和其它应用。此外,从MCU 210中消除代码160或相关的驱动器可以简化MCU 210中所需的驱动器,并且可以减少在MCU 210中需要更新的代码和驱动器的数量。它还可以消除为了确保NIC 113和驱动器115之间的兼容性所需的资格测试以及为了确保与OS 119的兼容性所需的资格测试。在开放源码操作系统的情况下,从MCU 210去除代码160或相关驱动器还可以消除对发布代码160的要求。
图3A和图3B示出了根据本公开的包括硬件协助305的示例冗余以太网网络301的一部分的细节。硬件协助305使得以太网节点能够具有冗余以太网连接,而不使用以太网节点的嵌入式处理器来实现FTE或其它冗余以太网网络所需的上行链路和下载过程。
如图3A中所示,MCU 310通过冗余以太网链路(可以将其区分为绿色和黄色)向以太网网络301发射上行链路通信并从以太网网络301接收下行链路通信。每个以太网链路包括PHY 330a-330b,以太网缆线140a-140b和交换机390a-390b。作为特定示例,交换机390a-390b可以使用标准以太网交换机来实现,而不是使用控制防火墙来实现。交换机390a-390b可以表示冗余以太网链路的末端。每个交换机390a-390b通过硬件协助305连接到MCU 310。
当以太网网络301具有去往(destine for)MCU 310的下行链路分组时,交换机390a-390b中的一个或两个接收下行链路分组,并将下行链路分组转发到一个或两个PHY330a-330b。当MCU 310具有去往以太网网络内的另一以太网节点的上行链路分组时,PHY330a-330b中的一个从硬件协助305接收上行链路分组,并将该上行链路分组转发到交换机390a-390b中的一个。
在一些实施例中,状态机395检测分组何时出现在PHY 330a-330b中的一个内,并且作为响应,向硬件协助305发送指示分组出现在缓冲该分组的PHY内的指示符。硬件协助305可以从状态机395接收指示符,并且作为响应,从适当的PHY 330a-330b取回到控制防火墙接收引擎中的分组。
硬件协助305处理MCU 310和PHY 330a-330b之间的上行链路和下行链路分组。当接收到用于MCU 310的下行链路分组时,硬件协助305从适当的PHY 330a-330b取回分组,对该分组进行过滤以确定分组是否通过至少一个过滤准则,如果没有通过,则丢弃该分组,并且如果通过,则将分组发射到MCU 310。除非确定主路径被阻塞,当准备好要发射来自MCU310的上行链路分组时,硬件协助305从MCU 310取回上行链路分组,进行深度分组检查,执行解码,选择PHY 330a-330b中的一个作为用于该分组的主路径,经由所选择的PHY映射用于该分组的主路径,并且将所述上行链路分组发射到所选择的PHY。如果确定主路径被阻塞,则硬件协助305重新映射用于上行链路分组的不同的次路径,并将该分组发射到次路径的PHY。为了维持交换设备390a和390b中的以太网层2桥接表,硬件协助305替代分组中的次源MAC地址。如果在分组检查期间,硬件协助305确定主路径被阻塞,但是本地主要到目的地次路径可用,则分组硬件协助305将次目的地MAC地址替代到分组中,以便分组穿过可行的路径。
图3B示出了图3A的MCU 310。如图3B中所示,MCU 310包括CPU 111,MAC 320,NIC113,标准NIC驱动器115,TCP/IP引擎117和OS 119。MAC 320在硬件协助305和NIC 113之间发射分组,并且NIC 113在CPU 111和硬件协助305之间提供硬件接口。MCU 310不包括添加在标准NIC驱动器115或中间驱动器内的任何FTE或其它代码160。MCU 310向硬件协助305发射上行链路通信370并从硬件协助305接收下行链路通信375。
如下面更详细地描述的,硬件协助305的使用可以实现与使用预处理硬件单元200获得的相同的益处。例如,硬件协助305可以减少MCU 310的CPU 111上的处理负载,简化MCU310中所需的驱动器,并且减少在MCU 310中需要更新的代码和驱动器的数量。它还可以消除为了确保NIC 113和驱动器115之间的兼容性所需的资格测试以及为了确保与OS 119的兼容性所需的资格测试。在开放源码操作系统的情况下,从MCU 310去除代码160或相关驱动器还可以消除对发布代码160的任何要求。此外,硬件协助305减少了在预处理硬件单元200中所要求的支持三个MAC的需要。另外,可以使用能够实现更高网络速度(例如1Gbps或更高)的FPGA来实现硬件协助305。
尽管图1A至图3C示出了示例冗余以太网网络的部分,但是可以对图1A至图3C进行各种改变。例如,可以将这些图的一个或一些中的特征并入到这些图中的其它特征中。
图4示出了根据本公开的用于冗余以太网网络的示例硬件协助305。为了便于解释,相对于以太网网络301来描述硬件协助305,然而可以在任何合适的系统中使用硬件协助305。在一些实施例中,可以使用“片上系统”FPGA 400(例如XILINX ZYNQ FPGA)来实现硬件协助305。
如图4中所示,FPGA 400从多个PHY 330a-330b接收下行链路通信,并将所接收的下行链路通信发射到高级精简指令集计算机机器(ARM)处理器411,其可以表示MCU 310中的CPU 111。在这里将ARM处理器411示为具有两个部分,即用于下行链路通信的接收机(Rx)和用于上行链路通信的发射机(Tx)。对于每个PHY 330a-330b示出了相同类型的划分。
在图4中所示的实现中,FPGA 400包括软核处理器480,例如XILINX MICROBLAZE软核处理器。软核处理器480实现支持硬件协助305的各种功能的以太网网络管理器。然而,注意:FPGA 400可以省略软核处理器480,并且改为耦合到充当以太网网络管理器的外部处理器。
将软核处理器480耦合到控制防火墙引擎460a-460b,462和心跳分组存储(HPS)486。作为用于上行链路通信的管理器,处理器480(例如经由中断)接收上行链路分组准备好进行检查的指示,并且作为响应,取回用于检查的分组的一部分。处理器480可以对取回的部分执行深度分组检查过程,并通过插入分组的已检查部分来更新网络连接性数据库(例如MAC地址解析表或“MART”487)。处理器480使用存储在MART 487中的健康信息来确定到哪里发送分组。处理器480基于MART 487中的网络的健康来选择最佳路径作为要被发射到以太网的分组的主物理路径。如果必要,处理器480将最佳路径的地址作为上行链路分组的目的地地址进行插入。在一些情况下,处理器480不需要插入新的目的地地址,因为原始目的地地址已经是最佳路径的地址。如果处理器480已经选择了用于发射分组的次路径,则处理器480可以在分组中插入新的源MAC地址。作为用于下行链路通信的管理器,处理器480取回下行链路分组的目的地地址部分,并且通过将目的地地址与MART 487中的地址进行比较来执行深度分组检查过程。如果分组的目的地地址不在MART 487中,则处理器480将分组的目的地地址作为非FTE节点存储在另一个表(例如,单个附着节点表)中。单个附着节点表被用来为没有参与FTE协议的单个附着节点选择最佳路径。
(经由控制器488)控制各种多路复用器(MUX)484a-484c以支持通过FPGA 400的不同通信路径。在此示例中,FPGA 400包括用于从多个以太网链路接收下行链路通信并将所接收的下行链路通信路由到单个MCU 310的多到一(例如2到1)接收路径。FPGA 400还包括用于从单个MCU 310接收上行链路通信并通过多个以太网链路路由所接收的上行链路通信的一到多(例如1到2)发射路径。
HPS 486存储心跳信号,例如根据FTE协议周期性地发射的那些(比如每秒一次)。例如,一个心跳分组可以具有与“黄色”以太网链路对应的源MAC地址,以及一个心跳分组可以具有与“绿色”以太网链路对应的源MAC地址。每个心跳分组可以包括关于其它以太网节点在接收的测试分组中检测到了什么的信息,可以将其用来确定以太网网络是否有故障或者在某处以其它方式被破坏。
这里的控制防火墙引擎包括多个接收控制防火墙引擎460a-460b和至少一个发射控制防火墙引擎462。控制防火墙引擎460a-460b,462可以并行地接收分组,并且在另一个引擎接收分组时不需要进入待机模式。每个引擎460a-460b,462可以执行分组过滤功能——例如当接收到分组时,以及丢弃不满足过滤准则的分组。例如,控制防火墙引擎460a-460b,462可以识别作为FTE协议的一部分的分组,并且可以限制允许通过控制防火墙引擎460a-460b,462的多播或广播通信的数量和速率。在接收在指定时间段内的多播/广播分组的阈值数之后,控制防火墙引擎460a-460b,462可以丢弃超过阈值数的多播/广播分组。控制防火墙引擎460a-460b,462还可以过滤TCP,IP,UDP和其它类型的通信。每个控制防火墙引擎460a-460b,462还可以执行分组检测功能——例如通过确定分组何时可用以及向软核处理器480发送指示分组的一部分准备好被检查的指示符。CF9引擎是可以在FPGA400中实现的控制防火墙引擎的示例。控制防火墙引擎460a-460b保护MCU 310免于被广播洪流淹没——例如通过限制通过分组过滤器的以太网广播通信的数目。通过比较,CPU 111通常将处理通过PHY 130接收的每个分组,但是MCU 310仅接收通过FPGA 400的分组过滤过程而未被丢弃的分组。这允许软核处理器480和ARM处理器411两者避免分组处理的重负荷。
将控制防火墙引擎460a-460b耦合到缓冲器482a-482b,并且将控制防火墙引擎462耦合到缓冲器482c。缓冲器482a-482c可以表示先进先出(FIFO)队列、移位寄存器或其它合适的存储器结构。每个控制防火墙引擎460a-460b,462还可以包括其自己的诸如分组缓冲器之类的内部存储器,可以将其用来使得接收分组的至少一部分对于处理器480是可访问的。
对于上行链路分组,控制防火墙引擎462从缓冲器482c接收上行链路分组,处理所接收的上行链路分组,并将处理的分组向所选择的MUX 484b或484c转发。控制防火墙引擎462允许处理器480访问其内部分组缓冲器,以便将上行链路分组路由到最佳路径(主物理路径)。所选择的特定的MUX 484b或484c可以基于来自处理器480的指示。在这个示例中,控制防火墙引擎462包括用于计算FCS值的帧校验序列(FCS)处理块463。在将分组输出到所选择的MUX 484b或484c之前,控制防火墙引擎462将计算的FCS值插入到分组中。在这个示例中,每个MUX 484b-484c可以选择性地输出来自控制防火墙引擎462的上行链路分组或来自HPS 486的心跳分组。
对于下行链路分组,控制防火墙引擎460a-460b中的一个或多个接收下行链路分组,其可以在过滤之后被存储在缓冲器482a-482b中的一个或多个中。MUX 484a被操作以将下行链路分组从所选择的缓冲器482a-482b提供到ARM处理器411。MUX 484a的操作可以基于来自处理器480的指示。
在一些实施例中,HPS 486存储FPGA 400已经从其它节点接收的心跳分组的状态。例如,可以将网络连接性数据库(诸如MART 487)存储在HPS 486中,其中MART 487包括关于以太网网络的健康的信息。HPS 486从处理器480接收心跳分组,并且可以复制接收的分组,产生用于“黄色”以太网链路的一个心跳分组,并且在替代源MAC地址和必要的指示符之后,产生用于“绿色”以太网链路的一个心跳分组。HPS 486还从处理器480接收控制信号,指令HPS 486按顺序将心跳分组中的两个输出到MUX 484b和MUX 484c。
控制器488被配置成生成控制FPGA 400内的发射路径操作和接收路径操作的控制信号。控制器488和控制防火墙引擎460a-460b,462之间的通信链路可以是双向的,并且允许控制器488从控制防火墙引擎460a-460b,462接收信号。作为示例功能,对于上行链路分组,控制器488可以指令控制防火墙引擎462从缓冲器482c取回分组,并且控制器488可以配置MUX 484b-484c中的一个以在适当的PHY 330a-330b上输出上行链路分组。对于心跳分组,控制器488可以配置MUX 484b-484c中的一个以在适当的PHY 330a-330b上输出来自HPS486的心跳分组。对于下行链路分组,控制器488可以接收一个或两个控制防火墙引擎460a-460b已经将下行链路分组存储在一个或两个缓冲器482a-482b中的指示,并且控制器488可以配置MUX 484a以输出下行链路分组。
在一些实施例中,控制器488被配置成执行状态机过程控制(例如上面描述的状态机395的功能)。例如,控制器488可以被配置成检测分组何时出现在PHY 330a-330b中的一个内,并且作为响应,从正在对分组缓冲的PHY中取回分组。在其它实施例中,将控制器488耦合到状态机395,并且从状态机395接收指示符,该指示符指示哪个PHY正在对用于MCU310的分组缓冲。
在一些实施例中,将控制器488耦合到处理器480。在这种情况下,处理器480可以向控制器488发射信号(例如中断信号),以便指示用于上行链路分组的最佳路径的目的地地址。作为响应,控制器488控制MUX 484b-484c并且指令控制防火墙引擎462开始输出上行链路分组。处理器480还可以向控制器488发射中断信号,指示FPGA 400已经开始通过以太网链路发送心跳分组。控制器488可以延迟发射和处理从MCU 310接收的上行链路分组,并且缓冲器482c可以开始堆叠上行链路通信370。
FPGA 400可以在这里保留标准NIC驱动器115,这简化了OS升级。FPGA 400还可以允许使用较不昂贵的商业交换机,消除了MCU内的额外的NIC 113,并且消除了被添加来修改标准NIC驱动器115的代码160。此外,软核处理器480可以是更简单的并且具有比由CPU111执行的驱动器或代码160更少的要执行的代码。
尽管图4示出了用于冗余以太网网络的硬件协助305的一个示例,但是可以对图4进行各种改变。例如,硬件协助305可以以任何其它合适的方式来实现,并且不需要使用FPGA来实现。
图5示出了根据本公开的用于在冗余以太网网络中的下行链路接收处理的示例方法500。为了便于解释,关于实现图3的硬件协助305的FPGA 400来描述方法500。方法500可以由任何其它合适的设备使用。
在步骤505中,FPGA 400从交换机390a-390b接收下行链路分组。例如,控制防火墙引擎460a-460b中的一个或多个可以从一个或多个交换机390a-390b接收下行链路分组。在步骤510中,FPGA 400存储用于检查的下行链路分组的一部分。例如,每个控制防火墙引擎460a-460b可以在其内部存储器中存储下行链路分组的报头部分。下行链路分组的报头部分可以包括诸如MAC地址字段和IP地址字段之类的地址信息。在一些实施例中,每个控制防火墙引擎460a-460b将MAC地址字段部分存储在其内部存储器中,其与IP地址字段部分被存储在内部存储器中的地方分开。
在步骤515中,FPGA 400使用分组过滤器过滤所接收的下行链路分组,例如允许合格分组通过并禁止不合格分组通过的分组过滤器。例如,每个控制防火墙引擎460a-460b可以包括分组过滤器,其确定所接收的下行链路分组是否是有效的霍尼韦尔EXPERION控制数据分组。如果所接收的下行链路分组未通过过滤,则在步骤520中,控制防火墙引擎460a-460b丢弃分组,从而禁止将不合格分组发射到MCU 310。如果所接收的下行链路分组通过过滤,则在步骤525中,控制防火墙引擎460a-460b确定该分组是否是FTE心跳分组。如果所接收的下行链路分组是心跳分组,则过程继续进行到步骤530;否则,过程继续进行到步骤540。
在步骤530中,控制防火墙引擎460a-460b向处理器480指示分组的报头部分准备好进行检查。来自控制防火墙引擎460a-460b的指示符指示处理器480从控制防火墙引擎的内部存储器取回MAC地址字段和IP地址字段。在步骤535中,响应于从控制防火墙引擎接收到指示符,处理器480更新网络连接性数据库。例如,响应于从控制防火墙引擎460a-460b接收到指示符,处理器480从控制防火墙引擎的内部存储器取回MAC地址和IP地址字段。处理器480使用取回的地址信息来更新MART 487和网络连接性数据库的单个附着的节点表。
在步骤540中,控制防火墙引擎460a-460b将下行链路分组转发到对应的缓冲器482a-482b。例如,响应于所接收的下行链路分组不是FTE心跳的确定,控制防火墙引擎460a-460b将下行链路分组转发到对应的缓冲器482a-482b。此外,响应于从控制器488接收到控制信号,控制防火墙引擎460a-460b可以将下行链路分组转发到对应的缓冲器482a-482b。控制器488向缓冲器482a-482b发送控制信号,指令它接收来自控制防火墙引擎460a-460b的下行链路分组。在步骤545中,FPGA 400向MCU 310发射下行链路分组。控制器488可以向MUX 484a发送指示从缓冲器482a-482b中的哪个取回下行链路分组的控制信号。
图6示出了根据本公开的用于在冗余以太网网络中的上行链路传输处理的示例方法600。为了便于解释,关于实现图3的硬件协助305的FPGA 400来描述方法600。方法600可以由任何其它合适的设备使用。
在步骤605中,FPGA 400从MCU 310接收上行链路分组。例如,缓冲器482c可以从MCU 310接收上行链路分组。在步骤610中,控制器488向缓冲器482c发送控制信号,指令其向控制防火墙引擎462转发上行链路分组以用于处理。控制器488还向控制防火墙引擎462发送控制信号,指令其从缓冲器482c接收上行链路分组。在步骤615中,响应于从缓冲器482c接收到上行链路分组,控制防火墙引擎462将上行链路分组存储在其内部存储器(例如其内部分组缓冲器)中。
在步骤620中,FPGA 400对上行链路分组进行深度分组检查。例如,控制防火墙引擎462可以向处理器480指示分组目的地的MAC地址在分组缓冲器中可用。在步骤625中,响应于接收到指示符,处理器480从控制防火墙引擎462的内部存储器取回分组的目的地MAC地址。处理器480通过将取回的MAC地址与存储在MART 487中的MAC地址进行比较来在MART487中查找取回的MAC地址。
在步骤630中,FPGA 400基于网络连接性数据库中的信息来为上行链路分组选择主物理路径。例如,处理器480可以使用MART 487中的信息来选择主物理路径。在步骤630中,处理器480还将上行链路分组映射到与主物理路径相对应的PHY的目的地MAC地址。例如,如果处理器480将上行链路分组映射到PHY 330a或330b的MAC地址(取决于选择“黄色”还是“绿色”路径),则处理器480将基于发射PHY和接收PHY的对应选择的MAC地址插入到控制防火墙引擎462的内部存储器中。通过发射选择MUX 484b或484c中控制防火墙引擎462将向其输出上行链路分组的一个的指示符,处理器480可以向控制防火墙引擎462指示所选择的主物理路径。在一些实施例中,控制防火墙引擎462计算主路径的FSC,并且在输出上行链路分组之前将计算的FSC插入到上行链路分组中。
在步骤635中,FPGA 400确定所选择的主物理路径是否被阻塞。如果主物理路径被阻塞,则过程继续进行到步骤640;否则,过程继续进行到步骤650。
在步骤640中,基于主路径被阻塞的确定,FPGA 400通过将上行链路分组映射到次PHY的MAC地址来将上行链路分组重新路由到次物理路径。例如,如果处理器480选择PHY330a作为主路径,则处理器480将上行链路分组映射到PHY 330b的MAC地址(或者反之亦然)。处理器480通过发射选择MUX 484b或484c中控制防火墙引擎462将向其输出上行链路分组的一个的指示符来向控制防火墙引擎462指示所选择的次物理路径。
在步骤645中,FPGA 400计算用于次路径的新的FCS,并用新的FCS替换先前计算的主路径的FCS。例如,控制防火墙引擎462内的FCS 463可以计算每个FCS值。FPGA 400可以刚好在输出上行链路分组之前将计算的FSC插入到上行链路分组中。
在步骤650中,FPGA 400将上行链路分组发射到分组缓冲器中的MAC地址。例如,基于在步骤630或640中接收的指示符,控制防火墙引擎462可以将上行链路分组输出到所选择的MUX。控制器488向所选择的MUX发送控制信号,指令其向对应的PHY发射上行链路分组。当步骤635中的确定是主物理路径没有被阻塞时,分组缓冲器中的MAC地址是与主物理路径相对应的PHY的MAC地址。当步骤635中的确定是主物理路径被阻塞时,通过MAC地址的替代和发射PHY的选择来确定路径。如果发射PHY是黄色的并且接收是绿色的,则目的地地址必须被替代,并且选择PHY 330b路径。如果发射PHY是绿色并且接收是黄色的,则源地址必须被替代,并且选择PHY 330a路径。如果发射PHY是绿色的并且接收是绿色的,则源和目的地地址两者必须被替代,并且选择PHY 330b路径。
图7示出了根据本公开的用于选择性地发射上行链路分组的示例方法700。为了便于解释,关于实现图3的硬件协助305的FPGA 400来描述方法700。方法700可以由任何其它合适的设备使用。
在步骤705中,FPGA 400为每个冗余以太网路径周期性地生成心跳分组。例如,处理器480可以以1秒间隔生成心跳分组,包括针对每个PHY 330a-330b的一个心跳分组。在步骤710中,FPGA 400将每个心跳分组存储在存储器中。例如,处理器480可以将心跳分组写入到HPS 486。
在步骤715中,FPGA指令存储器将每个心跳分组转发到与源地址相对应的MUX。例如,处理器480可以向HPS 486发射控制信号,该控制信号包括将用于一个以太网链路的心跳分组转发到MUX 484b或者将用于另一个以太网链路的心跳分组转发到MUX 484c的指令。
在步骤720中,FPGA 400确定是否出现要被发射到以太网网络的心跳分组。例如,控制器488可以确定HPS 486是否正在存储心跳分组。如果没有出现心跳分组,则在步骤725中,当向PHY 330a-330b输出分组时,控制器488向适当的MUX 484b-484c发送控制信号,以选择从控制防火墙引擎462接收的上行链路分组。
如果出现心跳分组,则在步骤730中,FPGA 400(例如控制器488)确定MUX 484b-484c是否已经完成心跳分组的传输,以便开始发射来自MCU 310的上行链路分组。如果FPGA400已经完成了心跳分组的传输,则该方法继续进行到步骤725,其中当向对应的PHY 330a-330b输出分组时,控制器488向MUX 484b-484c发送控制信号,以选择从控制防火墙引擎462接收的上行链路分组。
如果MUX处于发射心跳分组的过程中,则该方法继续进行到步骤735和740。在步骤735中,控制器488防止缓冲器482将上行链路分组转发到控制防火墙引擎462。例如,控制器488可以延迟发射控制信号以指令控制防火墙引擎462从缓冲器482读取上行链路分组。作为另一示例,控制器488可以指令缓冲器482拒绝读取访问,或者可以延迟发射指令缓冲器482c允许读取访问的控制信号。在步骤740中,FPGA 400可以通过对应的PHY将心跳分组发射到以太网网络。过程700返回到步骤730,指示控制器488可以继续(多个)延迟,直到MUX484b-484c完成心跳分组的传输。
尽管图5至图7示出了示例方法,但是可以对图5至图7进行各种改变。例如,虽然示出为一系列步骤,但是每个图中的不同步骤可以重叠、并行发生、以不同的顺序发生或者发生任何次数。
在一些实施例中,上述各种功能由从计算机可读程序代码形成并且包含在计算机可读介质中的计算机程序来实现或支持。短语“计算机可读程序代码”包括任何类型的计算机代码,包括源代码、目标代码和可执行代码。短语“计算机可读介质”包括能够由计算机访问的任何类型的介质,诸如只读存储器(ROM)、随机存取存储器(RAM)、硬盘驱动器、光盘(CD)、数字视频盘(DVD)或任何其它类型的存储器。“非暂时”计算机可读介质排除传送暂时电气或其它信号的有线、无线、光学或其它通信链路。非暂时计算机可读介质包括其中可以永久存储数据的介质和其中可以存储和稍后重写数据的介质,例如可重写光盘或可擦除存储器设备。
阐述贯穿本专利文档所使用的某些词语和短语的定义可能是有利的。术语“应用”和“程序”指的是适于在适当的计算机代码(包括源代码,目标代码或可执行代码)中实现的一个或多个计算机程序,软件部件,指令集,程序,函数,对象,类,实例,相关数据或其一部分。术语“包括”和“包含”以及其派生词意指在没有限制情况下的包括。术语“或”是包括性的,意指和/或。短语“与……相关联”以及其派生词可以意指包括,被包括在……内,与……互连,包含,被包含在……内,与或和……连接,与或和……耦合,与……可通信,与……协作,交织,并置,接近于,与或和……绑定,具有,具有……的属性,具有与或和……的关系等。短语“……中至少一个”当与一列项目一起使用时意指可以使用所列出项目中的一个或多个的不同组合,并且可能仅需要列表中的一个项目。例如,“A,B和C中的至少一个”包括以下组合中的任何一个:A,B,C,A和B,A和C,B和C,以及A和B和C。
虽然本公开已经描述了某些实施例和一般相关联的方法,但是这些实施例和方法的变体和置换对于本领域技术人员而言将是显而易见的。因此,示例实施例的上面描述不限定或约束本公开。在不脱离由下面权利要求限定的本公开的精神和范围的情况下,其它改变、替代和变体也是可能的。
Claims (15)
1.一种方法,包括:
从多个物理以太网接口(130,330a-330b)接收(505)下行链路分组;
基于分组过滤准则来选择性地丢弃(515)所述下行链路分组中的一些;
使用未丢弃的下行链路分组中的地址信息来更新(535)网络连接性数据库(487);
使用所述数据库来映射(540)用于所述未丢弃的下行链路分组中的每个的路径;和
将所述未丢弃的下行链路分组发射(545)到单个网络接口(113)。
2.根据权利要求1所述的方法,还包括:
从所述单个网络接口接收(605)上行链路分组;
基于所述数据库中的信息从所述多个物理以太网接口中选择(630)主物理以太网接口;和
通过所选择的主物理以太网接口发射(650)所述上行链路分组。
3.根据权利要求2所述的方法,还包括:
确定(635)与所述主物理以太网接口相关联的路径受损;
响应于所述确定,用来自所述多个物理以太网接口的与次物理以太网接口相对应的地址信息来替换(640)所述上行链路分组中的与所述主物理以太网接口相对应的地址信息;和
通过所述次物理以太网接口发射(650)所述上行链路分组。
4.根据权利要求1所述的方法,还包括:
确定(515,525)每个下行链路分组是否与指定的协议相关联;
响应于确定所述下行链路分组中的一个与所述指定的协议相关联,取回(530)所述下行链路分组的一部分;和
使用所述下行链路分组的该部分来更新(535)所述数据库。
5.根据权利要求1所述的方法,其中选择性地丢弃所述下行链路分组中的一些包括以下中的至少一个:
丢弃(520)与指定协议不相关联的下行链路分组;和
在指定时间段内接收到广播或多播分组的阈值量之后,在指定时间段的剩余部分内丢弃(520)随后接收到的广播或多播分组。
6.一种装置,包括:
多个控制防火墙引擎(460a-460b),被配置成:
从多个物理以太网接口(330a-330b)接收下行链路分组,所述控制防火墙引擎中的每一个被配置成耦合到所述物理以太网接口中的相应一个;和
基于分组过滤准则来选择性地丢弃所述下行链路分组中的一些;和
至少一个处理设备(480),被配置成:
使用未丢弃的下行链路分组中的地址信息来更新网络连接性数据库(487);
使用所述数据库来映射用于所述未丢弃的下行链路分组中的每个的路径;和
发起所述未丢弃的下行链路分组到单个网络接口(113)的传输。
7.根据权利要求6所述的装置,其中:
所述装置还包括被配置成从所述单个网络接口接收上行链路分组的附加控制防火墙引擎(462);并且
所述至少一个处理设备还被配置成:
基于所述数据库中的信息来从所述多个物理以太网接口中选择主物理以太网接口;和
发起通过所选择的主物理以太网接口的上行链路分组的传输。
8.根据权利要求7所述的装置,其中,所述至少一个处理设备还被配置成:
确定与所述主物理以太网接口相关联的路径受损;
响应于所述确定,用来自所述多个物理以太网接口的与次物理以太网接口相对应的地址信息来替换所述上行链路分组中的与所述主物理以太网接口相对应的地址信息;和
发起通过所述次物理以太网接口的所述上行链路分组的传输。
9.根据权利要求6所述的装置,其中所述至少一个处理设备还被配置成:
确定每个下行链路分组是否与指定的协议相关联;
响应于确定所述下行链路分组中的一个与所指定的协议相关联,取回所述下行链路分组的一部分;和
使用所述下行链路分组的该部分来更新所述数据库。
10.根据权利要求6所述的装置,其中,所述控制防火墙引擎被配置成通过以下各项中的至少一个来选择性地丢弃所述下行链路分组中的一些:
丢弃与指定协议不相关联的下行链路分组;和
在检测到在指定时间段内接收到广播或多播分组的阈值量之后,在指定时间段的剩余部分内丢弃随后接收到的广播或多播分组。
11.根据权利要求6所述的装置,其中所述控制防火墙引擎和所述至少一个处理设备包括现场可编程门阵列(FPGA)。
12.根据权利要求6所述的装置,还包括:
被配置成定义在所述物理以太网接口和以太网节点(310)之间的多个路径的多个多路复用器(484a-484c),所述多个路径包括所述控制防火墙引擎;和
控制器(488),被配置成控制所述多路复用器。
13.一种系统,包括:
被配置成耦合到多个以太网通信链路(140a-140b)的多个物理以太网接口(330a-330b);和
硬件协助设备(305),包括:
多个控制防火墙引擎(460a-460b),被配置成:
从所述物理以太网接口接收下行链路分组,所述控制防火墙引擎中的每个被配置成耦合到所述物理以太网接口中的相应一个;和
基于分组过滤准则来选择性地丢弃所述下行链路分组中的一些;和
至少一个处理设备(480),被配置成:
使用未丢弃的下行链路分组中的地址信息来更新网络连接性数据库(487);
使用所述数据库来映射用于所述未丢弃的下行链路分组中的每个的路径;和
发起所述未丢弃的下行链路分组到单个网络接口(113)的传输。
14.根据权利要求13所述的系统,其中:
所述硬件协助设备还包括被配置成从所述单个网络接口接收上行链路分组的附加控制防火墙引擎(462);和
所述至少一个处理设备还被配置成:
基于所述数据库中的信息来从所述多个物理以太网接口中选择主物理以太网接口;和
发起通过所选择的主物理以太网接口的上行链路分组的传输。
15.根据权利要求14所述的系统,其中,所述至少一个处理设备还被配置成:
确定与所述主物理以太网接口相关联的路径受损;
响应于所述确定,用来自所述多个物理以太网接口的与次物理以太网接口相对应的地址信息来替换所述上行链路分组中的与所述主物理以太网接口相对应的地址信息;和
发起通过所述次物理以太网接口的所述上行链路分组的传输。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/466870 | 2014-08-22 | ||
US14/466,870 US9450916B2 (en) | 2014-08-22 | 2014-08-22 | Hardware assist for redundant ethernet network |
PCT/US2015/044758 WO2016028555A1 (en) | 2014-08-22 | 2015-08-12 | Hardware assist for redundant ethernet network |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106576082A true CN106576082A (zh) | 2017-04-19 |
CN106576082B CN106576082B (zh) | 2020-11-06 |
Family
ID=55349256
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201580044842.XA Active CN106576082B (zh) | 2014-08-22 | 2015-08-12 | 用于冗余以太网网络的方法、装置和系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US9450916B2 (zh) |
EP (1) | EP3183850B1 (zh) |
CN (1) | CN106576082B (zh) |
WO (1) | WO2016028555A1 (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109558366A (zh) * | 2018-11-15 | 2019-04-02 | 浙江国利网安科技有限公司 | 一种基于多处理器架构的防火墙 |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9608959B2 (en) * | 2015-03-23 | 2017-03-28 | Quest Software Inc. | Non RFC-compliant protocol classification based on real use |
US10187446B2 (en) | 2015-03-23 | 2019-01-22 | Sonicwall Inc. | Firewall multi-level security dynamic host-based sandbox generation for embedded URL links |
US9485231B1 (en) | 2015-05-26 | 2016-11-01 | Dell Software Inc. | Securing internet of things communications across multiple vendors |
US9888011B2 (en) | 2015-07-31 | 2018-02-06 | Sonicwall Inc. | Social media login and interaction management |
CN109462488B (zh) * | 2017-09-06 | 2021-10-26 | 中兴通讯股份有限公司 | 获取用户设备数据流量的方法、会话管理功能及存储介质 |
CN108182079B (zh) * | 2017-12-21 | 2020-09-01 | 中国船舶重工集团公司第七0七研究所 | 一种基于串口的tms320c6748程序加载方法 |
CN110995726B (zh) * | 2019-12-11 | 2021-03-30 | 博依特(广州)工业互联网有限公司 | 一种基于内嵌arm的fpga芯片的网络隔离系统 |
US11956339B2 (en) * | 2020-12-31 | 2024-04-09 | Honeywell International Inc. | Multiple network redundancy protocols for data flow using the same physical interface |
US11689469B2 (en) * | 2021-10-29 | 2023-06-27 | Hewlett Packard Enterprise Development Lp | Assessment and dynamic quarantine of devices with anomalous behavioral pattern |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002158693A (ja) * | 2000-11-20 | 2002-05-31 | Yokogawa Electric Corp | ネットワーク品質評価装置 |
AU2003238809A1 (en) * | 2002-05-31 | 2003-12-19 | Skystream Networks, Inc. | Apparatus for redundant multiplexing and remultiplexing of program streams and best effort data |
CN101043422A (zh) * | 2006-03-24 | 2007-09-26 | 上海贝尔阿尔卡特股份有限公司 | 一种接入网络中的组播业务保护方法及其系统、装置 |
US20090003351A1 (en) * | 2007-06-28 | 2009-01-01 | Fujitsu Limited | Path changeover method and device |
US20090125714A1 (en) * | 2004-10-08 | 2009-05-14 | International Business Machines Corporation | Offline analysis of packets |
CN101766002A (zh) * | 2007-07-30 | 2010-06-30 | 思科技术公司 | 用于点到多点和多点到多点的以太网虚拟连接的冗余 |
EP2037364B1 (en) * | 2007-09-11 | 2010-12-08 | Polycom, Inc. | Method and system for assigning a plurality of macs to a plurality of processors |
JP2011166692A (ja) * | 2010-02-15 | 2011-08-25 | Nec Corp | ネットワークシステム、ネットワーク機器、経路情報更新方法、及びプログラム |
US20120210198A1 (en) * | 2011-02-16 | 2012-08-16 | Invensys Systems Inc. | System and Method for Fault Tolerant Computing Using Generic Hardware |
CN102984057A (zh) * | 2012-11-20 | 2013-03-20 | 中国舰船研究设计中心 | 一种多业务一体化双冗余网络系统 |
Family Cites Families (62)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0598969B1 (en) | 1992-11-27 | 1999-02-10 | International Business Machines Corporation | Inter-domain multicast routing |
US5394402A (en) | 1993-06-17 | 1995-02-28 | Ascom Timeplex Trading Ag | Hub for segmented virtual local area network with shared media access |
US5963556A (en) | 1993-06-23 | 1999-10-05 | Digital Equipment Corporation | Device for partitioning ports of a bridge into groups of different virtual local area networks |
US5485455A (en) * | 1994-01-28 | 1996-01-16 | Cabletron Systems, Inc. | Network having secure fast packet switching and guaranteed quality of service |
US5617421A (en) | 1994-06-17 | 1997-04-01 | Cisco Systems, Inc. | Extended domain computer network using standard links |
JP2001519973A (ja) | 1995-07-19 | 2001-10-23 | フジツウ ネットワーク コミュニケーションズ,インコーポレイテッド | 共用バッファへの優先度付きアクセス |
US5793763A (en) | 1995-11-03 | 1998-08-11 | Cisco Technology, Inc. | Security system for network address translation systems |
JP3332733B2 (ja) | 1996-07-11 | 2002-10-07 | 株式会社東芝 | ノード装置及びパケット転送方法 |
US6133846A (en) | 1996-10-01 | 2000-10-17 | Honeywell Inc. | Low cost redundant communications system |
US6467003B1 (en) | 1997-01-21 | 2002-10-15 | Honeywell International, Inc. | Fault tolerant data communication network |
US6108713A (en) | 1997-02-11 | 2000-08-22 | Xaqti Corporation | Media access control architectures and network management systems |
US6076115A (en) | 1997-02-11 | 2000-06-13 | Xaqti Corporation | Media access control receiver and network management system |
US7216043B2 (en) | 1997-02-12 | 2007-05-08 | Power Measurement Ltd. | Push communications architecture for intelligent electronic devices |
DE19715503A1 (de) | 1997-04-14 | 1998-10-15 | Siemens Ag | Integriertes Rechner- und Kommunikationssystem für den Anlagenbereich |
US6081512A (en) * | 1997-06-30 | 2000-06-27 | Sun Microsystems, Inc. | Spanning tree support in a high performance network device |
US6304903B1 (en) | 1997-08-01 | 2001-10-16 | Agilent Technologies, Inc. | State machine for collecting information on use of a packet network |
US6587884B1 (en) | 1997-09-10 | 2003-07-01 | Schneider Automation, Inc. | Dual ethernet protocol stack for maximum speed access to a programmable logic controller (PLC) |
US5963540A (en) | 1997-12-19 | 1999-10-05 | Holontech Corporation | Router pooling in a network flowswitch |
US6195351B1 (en) | 1998-01-28 | 2001-02-27 | 3Com Corporation | Logical switch set |
US6327677B1 (en) | 1998-04-27 | 2001-12-04 | Proactive Networks | Method and apparatus for monitoring a network environment |
DE69940451D1 (de) | 1998-06-25 | 2009-04-09 | Texas Instruments Inc | Reduzierung eines durch Rundschreiben verursachten Verkehrs in einem Kommunikationsnetz |
US6249883B1 (en) | 1998-06-29 | 2001-06-19 | Netpro Computing, Inc. | System and method for monitoring domain controllers |
US6275503B1 (en) | 1998-07-24 | 2001-08-14 | Honeywell International Inc. | Method for transmitting large information packets over networks |
US6219706B1 (en) | 1998-10-16 | 2001-04-17 | Cisco Technology, Inc. | Access control for networks |
US6308282B1 (en) | 1998-11-10 | 2001-10-23 | Honeywell International Inc. | Apparatus and methods for providing fault tolerance of networks and network interface cards |
US6839348B2 (en) | 1999-04-30 | 2005-01-04 | Cisco Technology, Inc. | System and method for distributing multicasts in virtual local area networks |
AU5628500A (en) | 1999-06-21 | 2001-01-09 | Fieldbus Foundation | Block-oriented control system on high speed ethernet |
US6901517B1 (en) * | 1999-07-16 | 2005-05-31 | Marconi Communications, Inc. | Hardware based security groups, firewall load sharing, and firewall redundancy |
US6826697B1 (en) | 1999-08-30 | 2004-11-30 | Symantec Corporation | System and method for detecting buffer overflow attacks |
US6308276B1 (en) * | 1999-09-07 | 2001-10-23 | Icom Technologies | SS7 firewall system |
US6684253B1 (en) | 1999-11-18 | 2004-01-27 | Wachovia Bank, N.A., As Administrative Agent | Secure segregation of data of two or more domains or trust realms transmitted through a common data channel |
US20020046357A1 (en) | 1999-12-28 | 2002-04-18 | Jiandong Huang | Software-based fault tolerant networking using a single LAN |
US6901443B1 (en) | 2000-03-10 | 2005-05-31 | Honeywell International Inc. | Non-fault tolerant network nodes in a multiple fault tolerant network |
US6930978B2 (en) | 2000-05-17 | 2005-08-16 | Deep Nines, Inc. | System and method for traffic management control in a data transmission network |
WO2002003597A1 (en) | 2000-06-30 | 2002-01-10 | Kanad Ghose | System and method for fast, reliable byte stream transport |
US6760782B1 (en) | 2000-08-04 | 2004-07-06 | Schneider Automation Inc. | Apparatus for controlling internetwork communications |
EP1180877B1 (en) | 2000-08-18 | 2005-07-20 | Broadcom Corporation | Method and apparatus for filtering packets based on data flows using address tables |
US6373376B1 (en) | 2000-09-11 | 2002-04-16 | Honeywell International Inc. | AC synchronization with miswire detection for a multi-node serial communication system |
US6448901B1 (en) | 2000-09-11 | 2002-09-10 | Honeywell International Inc | Status indicator for an interface circuit for a multi-node serial communication system |
US7269157B2 (en) | 2001-04-10 | 2007-09-11 | Internap Network Services Corporation | System and method to assure network service levels with intelligent routing |
US7313613B1 (en) | 2002-01-03 | 2007-12-25 | Microsoft Corporation | System and method facilitating network diagnostics and self-healing |
WO2003073283A1 (en) | 2002-02-21 | 2003-09-04 | Globespanvirata Incorporated | System and method for routing a cross segments of a network switch |
JP2003319433A (ja) | 2002-04-19 | 2003-11-07 | Fujitsu Ltd | 通信装置の設置位置を監視する監視装置および監視システム |
US20040146006A1 (en) | 2003-01-24 | 2004-07-29 | Jackson Daniel H. | System and method for internal network data traffic control |
US20040210623A1 (en) | 2003-03-06 | 2004-10-21 | Aamer Hydrie | Virtual network topology generation |
US7505416B2 (en) * | 2003-03-31 | 2009-03-17 | Finisar Corporation | Network tap with integrated circuitry |
JP4000479B2 (ja) | 2003-05-22 | 2007-10-31 | 日本電気株式会社 | データ通信システム、通信装置、及びその通信プログラム |
US6851621B1 (en) | 2003-08-18 | 2005-02-08 | Honeywell International Inc. | PDA diagnosis of thermostats |
US20050099955A1 (en) | 2003-11-10 | 2005-05-12 | Nortel Networks Limited | Ethernet OAM fault isolation |
US20050129037A1 (en) | 2003-11-19 | 2005-06-16 | Honeywell International, Inc. | Ring interface unit |
US7457870B1 (en) | 2004-02-27 | 2008-11-25 | Packeteer, Inc. | Methods, apparatuses and systems facilitating classification of web services network traffic |
US7453822B2 (en) | 2005-01-18 | 2008-11-18 | At&T Intellectual Property I, L.P. | System and method for managing broadband services |
JP4691372B2 (ja) | 2005-03-09 | 2011-06-01 | 富士通株式会社 | データ中継装置およびデータ中継方法 |
US8259593B2 (en) | 2005-06-29 | 2012-09-04 | Honeywell International Inc. | Apparatus and method for segmenting a communication network |
US20070027984A1 (en) | 2005-07-29 | 2007-02-01 | Jorgensen Steven G | Monitoring of network packets |
US7593323B2 (en) | 2005-08-17 | 2009-09-22 | Honeywell International Inc. | Apparatus and methods for managing nodes on a fault tolerant network |
US7801628B2 (en) | 2005-09-30 | 2010-09-21 | Rockwell Automation Technologies, Inc. | Industrial operator interfaces interacting with higher-level business workflow |
US7593409B2 (en) | 2005-12-29 | 2009-09-22 | Honeywell International Inc. | Apparatus and methods for monitoring network traffic |
EP2500838A1 (en) * | 2011-03-16 | 2012-09-19 | Samsung SDS Co. Ltd. | SOC-based device for packet filtering and packet filtering method thereof |
US9185053B2 (en) * | 2011-11-09 | 2015-11-10 | Honeywell International Inc. | Virtual fault tolerant ethernet appliance and method of operation |
KR102019104B1 (ko) | 2012-01-20 | 2019-09-06 | 한국전자통신연구원 | 다중 네트워크 인터페이스 카드를 이용한 트래픽 처리방법 및 네트워크 디바이스 |
US9065677B2 (en) * | 2012-07-25 | 2015-06-23 | Qualcomm Incorporated | Forwarding tables for hybrid communication networks |
-
2014
- 2014-08-22 US US14/466,870 patent/US9450916B2/en active Active
-
2015
- 2015-08-12 EP EP15833723.8A patent/EP3183850B1/en active Active
- 2015-08-12 CN CN201580044842.XA patent/CN106576082B/zh active Active
- 2015-08-12 WO PCT/US2015/044758 patent/WO2016028555A1/en active Application Filing
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2002158693A (ja) * | 2000-11-20 | 2002-05-31 | Yokogawa Electric Corp | ネットワーク品質評価装置 |
AU2003238809A1 (en) * | 2002-05-31 | 2003-12-19 | Skystream Networks, Inc. | Apparatus for redundant multiplexing and remultiplexing of program streams and best effort data |
US20090125714A1 (en) * | 2004-10-08 | 2009-05-14 | International Business Machines Corporation | Offline analysis of packets |
CN101043422A (zh) * | 2006-03-24 | 2007-09-26 | 上海贝尔阿尔卡特股份有限公司 | 一种接入网络中的组播业务保护方法及其系统、装置 |
US20090003351A1 (en) * | 2007-06-28 | 2009-01-01 | Fujitsu Limited | Path changeover method and device |
CN101766002A (zh) * | 2007-07-30 | 2010-06-30 | 思科技术公司 | 用于点到多点和多点到多点的以太网虚拟连接的冗余 |
EP2037364B1 (en) * | 2007-09-11 | 2010-12-08 | Polycom, Inc. | Method and system for assigning a plurality of macs to a plurality of processors |
CN103002072A (zh) * | 2007-09-11 | 2013-03-27 | 宝利通公司 | 用于将多个mac分配给多个处理器的方法和系统 |
JP2011166692A (ja) * | 2010-02-15 | 2011-08-25 | Nec Corp | ネットワークシステム、ネットワーク機器、経路情報更新方法、及びプログラム |
US20120210198A1 (en) * | 2011-02-16 | 2012-08-16 | Invensys Systems Inc. | System and Method for Fault Tolerant Computing Using Generic Hardware |
CN102984057A (zh) * | 2012-11-20 | 2013-03-20 | 中国舰船研究设计中心 | 一种多业务一体化双冗余网络系统 |
Non-Patent Citations (1)
Title |
---|
匡昌武,方厚辉: "冗余链路技术在工业以太网中的应用分析", 《工业控制计算机》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109558366A (zh) * | 2018-11-15 | 2019-04-02 | 浙江国利网安科技有限公司 | 一种基于多处理器架构的防火墙 |
CN109558366B (zh) * | 2018-11-15 | 2023-03-31 | 浙江国利网安科技有限公司 | 一种基于多处理器架构的防火墙 |
Also Published As
Publication number | Publication date |
---|---|
CN106576082B (zh) | 2020-11-06 |
US9450916B2 (en) | 2016-09-20 |
EP3183850A1 (en) | 2017-06-28 |
WO2016028555A1 (en) | 2016-02-25 |
EP3183850B1 (en) | 2021-01-06 |
EP3183850A4 (en) | 2018-02-28 |
US20160057045A1 (en) | 2016-02-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106576082A (zh) | 用于冗余以太网网络的硬件协助 | |
CN106470158B (zh) | 报文转发方法及装置 | |
US9391835B2 (en) | Network switch | |
JP6184405B2 (ja) | SpaceWireベースのネットワークで用いられる装置および方法、当該方法を実施させるコンピュータプログラム、SpaceWireベースのネットワーク | |
US20110019539A1 (en) | Relay device, network system, route switching method, and recording medium | |
JP6048995B2 (ja) | メッシュ通信ネットワークのノード装置を設定する方法、コンピュータプログラム、情報記憶手段およびシステム | |
CA2555545A1 (en) | Interface bundles in virtual network devices | |
CN104821916B (zh) | 通过使用旁路隧道减少IPv6路由表的大小 | |
CN103401749A (zh) | 网络中的第一节点和主节点的故障恢复方法 | |
CN110417569A (zh) | 一种网络链路故障处理方法和隧道端点设备 | |
CN101771604B (zh) | 路由探测方法、系统以及中间路由装置 | |
CN105959254A (zh) | 处理报文的方法和装置 | |
CN101883160A (zh) | 多接口网络设备和多接口网络设备的报文发送方法 | |
US8248918B2 (en) | Routing failover with accurate multicast delivery | |
JP5814849B2 (ja) | オープンフローネットワークシステム、及び、データ通信方法 | |
CN104301186B (zh) | 一种测试路由转发表正确性的方法和系统 | |
NO314867B1 (no) | Fremgangsmåte for å optimalisere programvaredistribusjon i store kommunikasjonsnett | |
WO2020105379A1 (ja) | データ転送装置、データ転送方法 | |
US11716276B2 (en) | Detecting miswirings in a spine and leaf topology of network devices | |
US20120051364A1 (en) | Distributed routing according to longest match principle | |
CN104581861A (zh) | 一种基于卫星网络的路由方法和装置 | |
US11119871B2 (en) | Systems and methods recovering from the failure of a server load balancer | |
CN103368798B (zh) | 数据传输网络中基于内容的寻址的方法和网络部件 | |
JP5001912B2 (ja) | ノード及びネットワークシステム | |
JP6985611B2 (ja) | 故障箇所推定方法及び故障箇所推定装置 |
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 |