CN110830285A - 用于fpga中间件框架的基于消息的通信和故障恢复的方法和系统 - Google Patents

用于fpga中间件框架的基于消息的通信和故障恢复的方法和系统 Download PDF

Info

Publication number
CN110830285A
CN110830285A CN201910736558.9A CN201910736558A CN110830285A CN 110830285 A CN110830285 A CN 110830285A CN 201910736558 A CN201910736558 A CN 201910736558A CN 110830285 A CN110830285 A CN 110830285A
Authority
CN
China
Prior art keywords
udp
middleware framework
fpga middleware
fpga
framework
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
Application number
CN201910736558.9A
Other languages
English (en)
Other versions
CN110830285B (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.)
Tata Consultancy Services Ltd
Original Assignee
Tata Consultancy Services 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 Tata Consultancy Services Ltd filed Critical Tata Consultancy Services Ltd
Publication of CN110830285A publication Critical patent/CN110830285A/zh
Application granted granted Critical
Publication of CN110830285B publication Critical patent/CN110830285B/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
    • H04L45/00Routing or path finding of packets in data switching networks
    • H04L45/28Routing or path finding of packets in data switching networks using route fault recovery
    • 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/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • H04L41/0663Performing the actions predefined by failover planning, e.g. switching to standby network elements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1835Buffer management
    • H04L1/1841Resequencing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1629Error detection by comparing the output of redundant processing systems
    • G06F11/1637Error detection by comparing the output of redundant processing systems using additional compare functionality in one or some but not all of the redundant processing components
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/22Arrangements for detecting or preventing errors in the information received using redundant apparatus to increase reliability
    • 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/06Management of faults, events, alarms or notifications
    • H04L41/0654Management of faults, events, alarms or notifications using network fault recovery
    • 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
    • H04L41/0813Configuration setting characterised by the conditions triggering a change of settings
    • H04L41/0816Configuration setting characterised by the conditions triggering a change of settings the condition being an adaptation, e.g. in response to network events
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/10Architectures or entities
    • H04L65/102Gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/163In-band adaptation of TCP data exchange; In-band control procedures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/164Adaptation or special uses of UDP protocol
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/168Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP] specially adapted for link layer protocols, e.g. asynchronous transfer mode [ATM], synchronous optical network [SONET] or point-to-point protocol [PPP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/40Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass for recovering from a failure of a protocol instance or entity, e.g. service redundancy protocols, protocol state redundancy or protocol service redirection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0751Error or fault detection not based on redundancy
    • G06F11/0754Error or fault detection not based on redundancy by exceeding limits
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/16Error detection or correction of the data by redundancy in hardware
    • G06F11/1658Data re-synchronization of a redundant component, or initial sync of replacement, additional or spare unit
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本文的公开内容描述了一种用于FPGA中间件框架的基于消息的通信和故障恢复的方法和系统。FPGA和中间件框架的组合提供了高吞吐量低延迟的消息传递,并且可以减少开发时间,这是因为大多数组件都可以重复使用。此外,在FPGA框架上建立的基于消息的通信架构执行中间件活动,其将在不同平台之间使用TCP/UDP实现可靠通信,而不管其部署如何。所提出的FPGA中间件框架通过使用无源FPGA与有源FPGA实时动态同步而在其操作期间提供了基于TCP的UDP的可靠通信以及在有源FPGA框架的故障转移期间具有最小延迟的故障恢复。

Description

用于FPGA中间件框架的基于消息的通信和故障恢复的方法和 系统
相关申请和优先权的交叉引用
本申请要求2018年8月9日提交的印度临时专利申请号201821030011的优先权。上述申请的全部内容通过引用并入本文。
技术领域
本文的公开内容总体上涉及基于消息的通信和故障恢复的领域,并且更具体地涉及用于现场可编程门阵列(FPGA)中间件框架的基于消息的通信和故障恢复的方法和系统。
背景技术
基于消息的架构或面向消息的中间件(MOM)是支持在分布式系统之间发送和接收消息的中间件。基于消息的架构允许在不同平台上已独立开发的软件组件彼此交互。
现场可编程门阵列(FPGA)是集成电路,其被设计成使得其可以在制造之后由设计者或开发者配置。FPGA已使它们自己成为当前工业应用/企业应用特征中首选的数字实现平台之一。
FPGA和中间件框架的组合提供了高吞吐量低延迟的消息传递和针对应用的存储器访问服务,而不管它们的类型/部署格式如何。其它FPGA中间件框架可以积极地减少开发时间,这是因为大多数组件都可以重复使用,从而使设计者或开发者能够专注于应用功能,而无需担心实现通信/消息传递或内存要求。
通常在关键系统中使用的FPGA中间件框架需要通过使由软件和硬件缺陷引起的意外停机时间最小化来确保高水平的可用性,因此FPGA中间件框架还必须提供容错和快速恢复特征。
发明内容
本公开的实施例作为本发明人在传统系统中认识到的一个或多个上述技术问题的解决方案呈现出技术改进。例如,在一个实施例中,提供了一种用于FPGA中间件框架的基于消息的通信和故障恢复的方法。该方法包括:从多个第三方应用接收多个因特网协议(IP),以作为有源FPGA中间件框架的输入,其中多个IP包括多个片段和对应于多个片段中的每个的序列号,其中所接收的多个IP的多个片段包括传输控制协议(TCP)或用户数据报协议(UDP)。该方法还包括重新组装所接收的TCP和所接收的UDP,其中重新组装基于多个片段的序列号。该方法还包括:关于片段的丢失序列来检查重新组装的UDP,并请求从多个第三方应用在TCP信道上对重新组装的UDP的丢失序列重新传输。该方法还包括:插入重新组装的UDP和重新传输的UDP的丢失序列,以在有源FPGA中间件框架中形成具有多个序列号的完整消息。该方法还包括:将来自有源FPGA中间件框架的具有多个序列号的完整消息传送到无源FPGA中间件框架,以用于维持有源FPGA中间件框架和无源FPGA中间件框架之间的所接收IP的实时动态同步。该方法还包括基于多个序列号的被传送到无源FPGA中间件的完整消息的传输来检测有源FPGA中间件框架的故障转移,其中检测有源FPGA中间件框架的故障转移的步骤还包括:将具有多个序列号的完整消息从有源FPGA中间件框架传送到无源FPGA中间件框架;在无源FPGA中间件框架中接收并保存具有多个序列号的完整消息以进行处理;将接收物从无源FPGA传送到有源FPGA中间件框架,其中接收物包括所接收的完整消息的先前保存的连续序列号;并且最后基于所接收的序列号与无源FPGA中先前保存的连续序列的比较来检测有源FPGA中间件框架的故障转移。该方法还包括:在检测到有源FPGA中间件框架的故障之后,通过激活无源FPGA中间件框架而从检测到的故障转移中恢复。
在另一方面,提供了一种用于FPGA中间件框架的基于消息的通信和故障恢复的系统。该系统包括:重组逻辑模块-1,其被配置用于从多个第三方组件接收多个因特网协议(IP),以作为有源FPGA中间件框架的输入并重新组装所接收的TCP和所接收的UDP,其中重新组装基于多个片段的序列号。此外,该系统包括序列检查模块,其被配置用于关于片段的丢失序列来检查重新组装的UDP,并请求从多个第三方组件在TCP信道上对重新组装的UDP的丢失序列重新传输。此外,该系统包括序列插入模块,其被配置用于插入重新组装的UDP和重新传输的UDP的丢失序列,以在有源FPGA中间件框架中形成具有多个序列号的完整消息。此外,该系统包括切换逻辑模块,其被配置用于:基于多个序列号的被传送到无源FPGA中间件框架的完整消息的传输来检测有源FPGA中间件框架的故障转移并且在检测到有源FPGA中间件框架的故障之后,通过激活无源FPGA中间件框架而从检测到的故障转移中恢复。该系统还包括重组逻辑模块-2,其被配置用于:接收并重新组装在通过TCP封装重新组装的UDP的丢失序列之后在TCP信道上传送的重新组装的UDP的丢失序列。该系统还包括循环缓冲模块,其被配置用于保存具有多个序列号的完整消息。该系统还包括温度监视和心跳检测模块,其被配置为监视FPGA中间件框架是否温度升高并且还监视系统的总体健康/运转状况。
在又另一方面,提供了一种用于FPGA中间件框架的基于消息的通信和故障恢复的非暂时性计算机可读介质。程序包括。该程序还包括:从多个第三方应用接收多个因特网协议(IP),以作为有源FPGA中间件框架的输入,其中多个IP包括多个片段和对应于多个片段中的每个的序列号,其中所接收的多个IP的多个片段包括传输控制协议(TCP)或用户数据报协议(UDP)。该程序还包括重新组装所接收的TCP和所接收的UDP,其中重新组装基于多个片段的序列号。该程序还包括:关于片段的丢失序列检查重新组装的UDP,并请求从多个第三方应用在TCP信道上对重新组装的UDP的丢失序列重新传输。该程序还包括:插入重新组装的UDP和重新传输的UDP的的丢失序列,以在有源FPGA中间件框架中形成具有多个序列号的完整消息。该程序还包括:将来自有源FPGA中间件框架的具有多个序列号的完整消息传送到无源FPGA中间件框架,以用于维持有源FPGA中间件框架和无源FPGA中间件框架之间的所接收IP的实时动态同步。该程序还包括基于多个序列号的被传送到无源FPGA中间件的完整消息的传输来检测有源FPGA中间件框架的故障转移,其中检测有源FPGA中间件框架的故障转移的步骤还包括:将具有多个序列号的完整消息从有源FPGA中间件框架传送到无源FPGA中间件框架;在无源FPGA中间件框架中接收并保存具有多个序列号的完整消息以进行处理;将接收物从无源FPGA传送到有源FPGA中间件框架,其中接收物包括所接收的完整消息的先前保存的连续序列号;并且最后基于所接收的序列号与无源FPGA中先前保存的连续序列的比较来检测有源FPGA中间件框架的故障转移。该程序还包括:在检测到有源FPGA中间件框架的故障之后,通过激活无源FPGA中间件框架而从检测到的故障转移中恢复。
要理解的是,前面的大致描述和下面的详细描述两者都只是示例性和说明性的,并不是对所要求保护的本发明的限制。
附图说明
包含在本公开中并构成本公开的一部分的附图示出了示例性实施例,并且与说明书一起用于解释所公开的原理:
图1示出了根据本公开的一些实施例的使用FPGA中间件框架的基于消息的通信和故障恢复的系统的示例性框图。
图2是根据本公开的一些实施例的图1的系统的现场可编程门阵列(FPGA)的功能框图。
图3A和图3B是示出根据本公开的一些实施例的使用图1的系统的基于消息的通信的方法的示例性流程图。
图4示出了根据本公开的一些实施例的用于示出使用FPGA中间件框架的基于消息的架构的使用有源中间件框架和无源FPGA中间件框架的故障恢复技术的示例性框图。
图5是示出了根据本公开的一些实施例的用于使用FPGA中间件框架的所提出的基于消息的通信的使用有源中间件框架和无源FPGA中间件框架的故障恢复技术的示例性流程图。
具体实施方式
参考附图描述示例性实施例。在附图中,参考标号的最左边的一个或多个数字标识首次出现参考标号的图。在任何方便的地方,在整个附图中使用相同的参考标号来表示相同或相似的部分。虽然本文描述了所公开原理的示例和特征,但是在不脱离所公开实施例的范围的情况下,修改、改编和其他实施方式是可能的。以下详细描述旨在仅被视为示例性的,其真正的范围由所附权利要求指示。
现在参考附图,并且更具体地参考图1至图5,其中类似的参考字符在整个附图中始终表示对应的特征,示出了优选实施例,并且这些实施例在以下示例性系统和/或方法的上下文中描述。
图1示出了使用FPGA中间件框架的基于消息的通信和故障恢复的系统100的示例性框图。在实施例中,系统100包括多个可靠消息源,诸如可靠消息源1(102)、可靠消息源2(104)和可靠消息源N(106)。多个可靠消息源是在不同平台上独立开发的第三方应用。可靠消息源1(102)、可靠消息源2(104)和可靠消息源N(106)使用多个因特网协议(IP)将服务请求传送到以太网交换机108,其中多个IP包括多个片段和对应于多个片段中的每个片段的序列号,其中接收到的多个IP的多个片段包括传输控制协议(TCP)或用户数据报协议(UDP)。
以太网交换机108还连接到FPGA(110),该FPGA(110)还包括FPGA中间件(112)和应用实体(114)。FPGA(110)是以太网交换机(108)和多个消息接收器(消息接收器1(116)、消息接收器2(118)和消息接收器N(120))之间的中间件组件。来自多个可靠消息源的服务请求在多个消息接收器(消息接收器(116)、消息接收器(118)和消息接收器(120))中被服务。此外,在服务了服务请求之后,经由FPGA中间件框架110和以太网交换机108将服务请求的反馈从多个消息接收器(消息接收器1(116)、消息接收器2(118)和消息接收器N(120))传送回到多个可靠消息,诸如可靠消息源1(102)、可靠消息源2(104)和可靠消息源N(106)。
参考图1,图2是根据本公开的一些实施例的图1的系统的现场可编程门阵列(FPGA)(110)框架的框图。FPGA(110)还包括FPGA中间件(112)和应用实体(114)。在实施例中,FPGA中间件(112)包括多个有源和无源FPGA,它们同步地工作以进行消息通信,还检测故障并通过在检测到有源FPGA中间件框架的故障后激活无源FPGA中间件框架来从检测到的故障转移中恢复。应用实体(114)被配置用于基于应用域处理接收到的多个互联网协议(IP),其中应用域包括多个域,其具有要在中间件框架的帮助下被服务的多个IP。在实施例中,应用域可以包括从包括营销、零售、医疗域和股票交易所的众多域生成的多个IP。
在本公开的实施例中,图2包括MAC加TCP卸载引擎-1(TOE)(202)、重组逻辑模块-1(204)、序列检查模块(206)、专用过滤器模块(208)、序列插入模块(210)、应用处理模块(212)、温度监视和心跳检测模块(214)、DMA模块(216)、解码逻辑模块(218)、重组逻辑模块-2(220)、MAC+TOE2(222)、切换逻辑模块(224)和循环缓冲模块(226)。系统100被实施为软件程序的逻辑自包含部分、自包含硬件组件和/或具有嵌入每个硬件组件的软件程序的逻辑自包含部分(其在执行时执行本文描述的上述方法)的自包含硬件组件中的至少一个。
在本公开的实施例中,系统100包括MAC加TCP卸载引擎(TOE)-1(202),其是需要各种服务的第三方应用(可靠消息源1(102)、可靠消息源2(104)和可靠消息源N(106),其是在不同平台上独立开发的第三方应用)。由多个第三方组件(MAC+TOE)生成多个因特网协议(IP),以作为有源FPGA中间件框架的输入。多个IP包括多个片段和与多个片段中的每个片段对应的序列号,其中接收到的多个IP的多个片段包括传输控制协议(TCP)或用户数据报协议(UDP)。多个IP经由以太网交换机进行通信,如图1中示出的,并在图2中表示为Eth Tx和Eth Rx。与可能包含片段的丢失序列的UDP消息相比而言,作为双消息/部分消息到达FPGA的TCP消息更可靠。然而,与TCP相比而言,基于UDP的消息通信更快。
在本公开的实施例中,系统100包括重组逻辑模块-1(204),其被配置用于从多个第三方组件(MAC+TOE)接收IP作为输入。多个IP包括多个片段和与多个片段中的每个片段对应的序列号。接收到的多个IP的多个片段包括传输控制协议(TCP)或用户数据报协议(UDP)。TCP/UDP作为具有序列号的片段到达,其中片段在其到达时必须重新组装以获得完整的TCP消息。重组逻辑模块-1(204)接收IP并基于多个片段的序列号重新组装接收到的TCP和接收到的UDP。
在本公开的实施例中,系统100包括序列检查模块(206),其被配置用于关于片段的丢失序列来检查重新组装的UDP。序列检查模块(206)还被配置为并请求从多个第三方应用(诸如可靠消息源1(102)、可靠消息源2(104)和可靠消息源N(106),其是在不同平台上独立开发的第三方应用)在TCP信道上对重新组装的UDP的丢失序列进行重新传输。由于与TCP相比而言UDP消息更快,因此它可能包含片段的丢失序列,因此针对片段的任何丢失序列检查接收到的UDP。通过TCP通信信道使用UDP可以使通信可靠。因此,当序列检查模块(206)检查并识别出丢失的序列时,请求从多个第三方应用在TCP信道上对重新组装的UDP的丢失序列进行重新传输,该第三方应用针对服务请求已经传送了IP。在通过TCP封装重新组装的UDP的丢失序列之后,通过TCP信道传送重新组装的UDP。重组逻辑模块-2(220)被配置用于接收和重新组装在通过TCP封装重新组装的UDP的丢失序列之后通过TCP信道传送的重新组装的UDP的丢失序列。重新传输的UDP的丢失序列被接收、重新组装、并检查关于第二丢失的UDP,其中针对第二丢失的UDP,请求第三方组件通过TCP信道对第二丢失的UDP新的重新传输。因此,所提出的UDP通信技术通过使用可靠的TCP信道使UDP通信更可靠。
此外,在一些实施例中,基于应用域要求,在专用过滤器模块(208)中过滤重新组装的UDP/TCP的经检查的序列,其中,应用域包括具有要在中间件框架的帮助下被服务的多个IP的多个域。专用过滤器模块(208)以由对应域定义的预定义方式过滤重新组装的TCP/UDP数据的经检查的序列。
在本公开的实施例中,系统100包括序列插入模块(210),其被配置用于插入重新组装的UDP和重新传输的UDP的丢失序列,以在有源FPGA中间件框架中形成具有多个序列号的完整消息。具有多个序列号的完整消息与循环缓冲器模块(226)和应用处理模块(212)共享。
具有多个序列号的完整消息被保存在循环缓冲器模块(226)中,用于将具有多个序列号的完整消息从有源FPGA中间件框架发送到无源FPGA中间件框架,用于维持有源FPGA中间件框架和无源FPGA中间件框架之间的接收到的IP的实时和动态同步。
具有多个序列号的完整消息还由有源FPGA中间件框架处理以与应用处理模块(212)共享,该应用处理模块(212)被配置用于基于应用域要求处理经过滤的TCP/UDP,其中,应用域包括具有要在中间件框架的帮助下服务的多个IP的多个域。
在本公开的实施例中,系统100包括温度监视和心跳检测模块(214)、DMA模块(216)、解码逻辑模块(218)。温度监视和心跳检测模块(214)被配置为监视系统100的温度升高并且还监视无源FPGA中间件框架的总体健康/运转状况。直接存储器存取(DMA)模块(216)被配置为基于PCI(外围组件互连)的传输和接收与外部中央处理单元(CPU)通信,该PCI被表示为“PCI Tx”和“PCI Rx”。此外,解码逻辑模块(218)被配置为解码TCP/UDP消息,其将与FPGA中间件框架上的各种组件通信。
在本公开的实施例中,系统100包括切换逻辑模块(224),其被配置为在检测到有源FPGA中间件框架的故障之后激活无源FPGA中间件框架。
图3A和图3B是示出了根据本公开的一些实施例的使用图1和图2的系统的基于消息的通信的方法(300)中涉及的步骤的流程图。
如图3A和图3B中描绘的,在步骤302处,方法300包括从多个第三方组件(可靠消息源1(102)、可靠消息源2(104)和可靠消息源N(106),其是在不同平台上独立开发的第三方应用)接收多个因特网协议(IP),以作为有源FPGA中间件框架的输入,其中多个IP包括多个片段和对应于多个片段中的每个片段的序列号,其中接收到的多个IP的多个片段包括传输控制协议(TCP)或用户数据报协议(UDP)。
在步骤304处,方法300包括重新组装接收到的TCP和接收到的UDP,其中重新组装基于重组逻辑模块-1(204)中的多个片段的序列号。TCP/UDP作为具有序列号的片段到达,其中片段在其到达时必须重新组装以获得完整的TCP消息。重组逻辑模块-1(204)接收IP并基于多个片段的序列号重新组装接收到的TCP和接收到的UDP。
在步骤306处,方法300包括关于片段的丢失序列来检查重新组装的UDP,并且请求从序列检查模块(206)中的多个第三方组件在TCP信道上对重新组装的UDP的丢失序列进行重新传输。在检查并识别出丢失的序列时,通过TCP信道从多个第三方应用请求重新传输重新组装的UDP的丢失序列,该第三方应用针对服务请求已经传送了IP。在通过TCP封装重新组装的UDP的丢失序列之后,通过TCP信道传输重新组装的UDP。重组逻辑模块-2(220)被配置用于接收和重新组装在通过TCP封装重新组装的UDP的丢失序列之后通过TCP信道传送重新组装的UDP的丢失序列。重新传输的UDP的丢失序列被接收、重新组装、检查关于第二丢失的UDP,其中针对第二丢失的UDP,请求第三方组件通过TCP信道对第二丢失的UDP进行新的重新传输。因此,所提出的UDP通信技术通过使用可靠的TCP信道使UDP通信更可靠。此外,特定应用的过滤器模块(208)以由对应域定义的预定义方式过滤重新组装的TCP/UPD数据的经检查的序列。
在步骤308处,方法300包括插入重新组装的UDP和重新传输的UDP的丢失序列,以在有源FPGA中间件框架中形成具有多个序列号的完整消息。具有多个序列号的完整消息与循环缓冲器模块(226)和应用处理模块(212)共享。
在步骤310处,方法300包括将具有多个序列号的完整消息从有源FPGA中间件框架传送到无源FPGA中间件框架,用于维持在有源FPGA中间件框架和无源FPGA中间件框架之间的接收到的IP的实时和动态同步。
在步骤312处,方法300包括基于所传送的完整消息的多个序列号到无源FPGA中间件框架的传输来检测有源FPGA中间件框架的故障转移。
在步骤314处,方法300包括通过在检测到有源FPGA中间件框架的故障之后激活无源FPGA中间件框架从检测到的故障转移中恢复。无源FPGA中间件框架的恢复和激活由切换逻辑模块(224)执行。
图4示出了根据本公开的一些实施例的用于示出使用FPGA中间件框架的基于消息的架构的使用有源和无源FPGA中间件框架的故障恢复技术的系统400的示例性框图。在本公开的实施例中,图4包括:多个可靠消息源,其包括可靠消息源1(402)、可靠消息源2(404)、可靠消息源N(408);FPGA(408),其包括有源FPGA(410)和无源FPGA(412)。有源FPGA(410)还包括应用实体(418)和有源FPGA中间件(416)框架。无源FPGA(412)包括应用实体(414)和FPGA中间件(420)框架。此外,系统400还包括消息接收器1(422)、消息接收器2(424)、消息接收器N(426)。
在实施例中,具有多个序列号的每个完整消息从有源FPGA中间件(416)框架发送到无源FPGA中间件(420)框架,用于维持有源FPGA中间件(416)框架和无源FPGA中间件(420)框架之间的接收到的IP的实时和动态同步。基于发送的完整消息的多个序列号到无源FPGA中间件(420)框架的传输来检测有源FPGA中间件(416)框架的故障转移。用于检测故障转移的步骤包括在无源FPGA(412)中接收并保存具有多个序列号的完整消息以进行处理。在接收到完整消息时,从无源FPGA(412)向有源FPGA(410)发送接收物,其中该接收物包括接收到的完整消息的先前保存的连续序列号。此外,无源FPGA(412)不断地将接收到的序列号与先前保存的连续序列进行比较以检测故障转移,其可以表示为如下面示出的;
Tn>T(n-1)>T(n-2).........>T1
Rn>R(n-1)>R(n-2).........>R1
Rn>Tn
其中,
Tn是以序列号作为从有源FPGA中间件发送的子脚本的事务消息
Rn是以序列号作为从有源FPGA中间件发送的子脚本的事务完成(接收)
此外,有源FPGA(410)使用如图2中所解释的温度监视和心跳检测模块(214)连续监视无源FPGA架构框架404的健康状况,以检测任何可能的故障。在检测到有源FPGA(410)的故障转移时,无源FPGA(412)以最小延迟被激活,这是因为FPGA处于关于完整消息的通信的实时和动态同步,如上面所解释的。
图5是示出了根据本公开的一些实施例的使用图4的系统的使用FPGA中间件框架的所提出的基于消息的架构的方法500中涉及的使用有源FPGA中间件(416)框架和无源FPGA中间件(420)框架的故障恢复技术的步骤的示例性流程图。
如图5中描绘的,在步骤502处,方法500包括将具有多个序列号的完整消息从有源FPGA中间件(416)框架发送到无源FPGA中间件(420)框架。
在步骤504处,方法500包括在无源FPGA中间件(420)框架中接收并保存具有多个序列号的完整消息以进行处理。
在步骤506处,方法500包括将来自无源FPGA中间件(420)框架的接收物发送到有源FPGA中间件(416)框架,其中该接收物包括接收到的完整消息的先前保存的连续序列号,其可表示为如下面示出的;
Tn>T(n-1)>T(n-2).........>T1
Rn>R(n-1)>R(n-2).........>R1
Rn>Tn
其中,
Tn是以序列号作为从有源FPGA中间件发送的子脚本的事务消息
Rn是以序列号作为从有源FPGA中间件发送的子脚本的事务完成(接收)
在步骤508处,方法500包括基于接收到的序列号与无源FPGA中间件(420)框架中先前保存的连续序列的比较来检测有源FPGA中间件(416)框架的故障转移。
书面描述描述了本文的主题,以使本领域技术人员能够制造和使用这些实施例。主题实施例的范围由权利要求限定,并且可以包括本领域技术人员想到的其他修改。如果这些其他修改具有与权利要求的字面语言没有不同的相似元素,或者如果它们包括与权利要求的字面语言无实质差别的等效元素,则这些其他修改旨在落入权利要求的范围内。
本公开的实施例在此描述了用于FPGA中间件框架的基于消息的通信和故障恢复的方法和系统。被构建在FPGA框架上的基于消息的通信架构执行了中间件活动,这些活动将在不同平台(诸如最终用户/客户端、软件组件或硬件/FPGA组件)之间使用TCP/UDP使能可靠通信,而不管其部署如何。所提出的FPGA中间件框架通过使用无源FPGA与有源FPGA实时并动态同步,在其操作期间在有源FPGA框架的故障转移期间以最小延迟提供可靠的通信以及故障恢复。
应当理解,保护范围扩展到这样的程序,并且除了其中具有消息的计算机可读装置之外;当程序在服务器或移动装置或任何合适的可编程装置上运行时,这种计算机可读存储装置包含用于实施该方法的一个或多个步骤的程序代码装置。硬件装置可以是任何类型的可以编程的装置,包括例如任何类型的计算机,如服务器或个人计算机等,或其任何组合。该装置还可以包括可以是以下的装置:例如硬件装置,如,例如专用集成电路(ASIC)、现场可编程门阵列(FPGA);或硬件和软件装置的组合,例如ASIC和FPGA,或至少一个微处理器和至少一个存储器,其中具有位于其中的软件处理组件。因此,该装置可以包括硬件装置和软件装置。这里描述的方法实施例可以用硬件和软件实现。该装置还可以包括软件装置。可替选地,实施例可以在不同的硬件装置上实现,例如使用多个CPU。
本文的实施例可包括硬件和软件元素。以软件实施的实施例包括但不限于固件、驻留软件、微代码等。由本文描述的各种组件执行的功能可以在其他组件或其他组件的组合中实施。出于本说明书的目的,计算机可用或计算机可读介质可以是能够包括、存储、通信、传播或传输程序以供指令执行系统、设备或装置使用或与之结合使用的任何设备。
所示出的步骤被阐述以解释所示出的示例性实施例,并且应该预期正在进行的技术开发将改变执行特定功能的方式。出于说明而非限制的目的,本文提出了这些示例。此外,为了便于描述,这里任意地定义了功能构建块的边界。可以定义替代边界,只要适当地执行指定的功能及其关系即可。基于本文包含的教导,相关领域的技术人员将清楚替代方案(包括本文描述的那些的等同物、扩展、变化、偏差等)。这些替代方案落入所公开实施例的范围内。此外,词语“包含”、“具有”、“含有”和“包括”以及其他类似形式在意义上旨在是等同的并且是开放式的,在于在这些词中的任何一个之后的一个或多个条目不是意味着是这些一个或多个条目的详尽清单,或意味着仅限于列出的一个或多个条目。还必须注意,如本文和所附权利要求中所使用的,单数形式“一”、“一个”和“该”包括复数指代,除非上下文另有明确说明。
此外,一个或多个计算机可读存储介质可用于实施与本公开一致的实施例。计算机可读存储介质指的是可以存储处理器可读的信息或数据的任何类型的物理存储器。因此,计算机可读存储介质可以存储用于由一个或多个处理器执行的指令,包括用于使一个或多个处理器执行与本文描述的实施例一致的步骤或阶段的指令。术语“计算机可读介质”应该被理解为包括有形条目并且不包括载波和瞬态信号,即,是非暂时的。示例包括随机存取存储器(RAM)、只读存储器(ROM)、易失性存储器、非易失性存储器、硬盘驱动器、CD ROM、DVD、闪存驱动器、磁盘和任何其他已知的物理存储介质。
意图是本公开和示例仅被视为示例性的,所公开的实施例的真实范围由所附权利要求指示。

Claims (11)

1.一种用于FPGA中间件框架的基于消息的通信和故障恢复的处理器实现的方法(300),所述方法包括:
从多个第三方应用接收多个因特网协议(IP),以作为有源FPGA中间件框架的输入,其中所述多个IP包括多个片段和对应于所述多个片段中的每个片段的序列号,其中所接收的多个IP的多个片段包括传输控制协议(TCP)或用户数据报协议(UDP)(302);
重新组装所接收的TCP和所接收的UDP,其中该重新组装基于所述多个片段的序列号(304);
关于片段的丢失序列来检查重新组装的UDP,并请求从多个第三方应用在TCP信道上对重新组装的UDP的丢失序列进行重新传输(306);
插入所述重新组装的UDP和重新传输的UDP的丢失序列,以在所述有源FPGA中间件框架中形成具有多个序列号的完整消息(308);
将来自所述有源FPGA中间件框架的具有多个序列号的完整消息传送到无源FPGA中间件框架,以用于维持有源FPGA中间件框架和无源FPGA中间件框架之间的所接收IP的实时动态同步(310);
基于多个序列号的被传送到无源FPGA中间件的完整消息的传输来检测所述有源FPGA中间件框架的故障转移(312);以及
在检测到所述有源FPGA中间件框架的故障之后,通过激活所述无源FPGA中间件框架而从检测到的故障转移中恢复(314)。
2.根据权利要求1所述的方法,其中,在通过TCP封装重新组装的UDP的丢失序列之后,在所述TCP信道上传送重新组装的UDP的丢失序列。
3.根据权利要求2所述的方法,其中,重新传输的UDP的丢失序列被接收、重新组装、检查关于第二丢失的UDP。
4.根据权利要求3所述的方法,其中,对于第二丢失的UDP,请求所述第三方应用为所述第二丢失的UDP在所述TCP信道上进行新的重新传输。
5.根据权利要求1所述的方法,其中,检测所述有源FPGA中间件框架的故障转移的步骤还包括:
将具有多个序列号的完整消息从所述有源FPGA中间件框架传送到所述无源FPGA中间件框架(502);
在所述无源FPGA中间件框架中接收并保存具有多个序列号的完整消息以进行处理(504);
将接收物从无源FPGA传送到有源FPGA中间件框架,其中接收物包括所接收的完整消息的先前保存的连续序列号(506);以及
基于所接收的序列号与所述无源FPGA中先前保存的连续序列的比较来检测所述有源FPGA中间件框架的故障转移(508)。
6.一种用于FPGA中间件框架的基于消息的通信和故障恢复的系统(100),所述FPGA中间件框架包括有源FPGA中间件框架和无源FPGA中间件框架,所述系统包括:
重组逻辑模块-1(204),其被配置用于:
从多个第三方组件接收多个因特网协议(IP),以作为有源FPGA中间件框架的输入,其中所述多个IP包括多个片段和对应于所述多个片段中的每个片段的序列号,其中所接收的多个IP的多个片段包括传输控制协议(TCP)或用户数据报协议(UDP);并且
重新组装所接收的TCP和所接收的UDP,其中所述重新组装基于所述多个片段的序列号;
序列检查模块(206),其被配置用于关于片段的丢失序列来检查重新组装的UDP,并请求从多个第三方组件在TCP信道上对重新组装的UDP的丢失序列进行重新传输;
序列插入模块(210),其被配置用于插入所述重新组装的UDP和重新传输的UDP的丢失序列,以在所述有源FPGA中间件框架中形成具有多个序列号的完整消息;以及
切换逻辑模块(224),其被配置用于:
基于多个序列号的被传送到所述无源FPGA中间件框架的完整消息的传输来检测所述有源FPGA中间件框架的故障转移;并且
在检测到所述有源FPGA中间件框架的故障之后,通过激活所述无源FPGA中间件框架而从检测到的故障转移中恢复。
7.根据权利要求6所述的系统,还包括应用实体,其包括:
专用过滤器模块(208),其被配置为基于应用域要求而过滤重新组装的UDP/TCP的所检查序列,其中所述应用域包括具有要在中间件框架的帮助下被服务的多个IP的多个域;和
应用处理模块(212),其被配置用于基于应用域要求而处理过滤后的TCP/UDP,其中,所述应用域包括具有要在中间件框架的帮助下被服务的多个IP的多个域。
8.根据权利要求6所述的系统,其中,重组逻辑模块-2(220)被配置用于:接收并重新组装在通过TCP封装重新组装的UDP的丢失序列之后在所述TCP信道上传输重新组装的UDP的丢失序列。
9.根据权利要求6所述的系统,其中,具有多个序列号的所述完整消息被保存在循环缓冲模块(226)中。
10.根据权利要求6所述的系统,其用于检测故障转移,所述系统还包括温度监视和心跳检测模块(216),其被配置为关于温度升高而监视FPGA中间件框架并且还监视所述系统(100)的总体健康/运转状况。
11.一种计算机程序产品,包括具有包含在其中的计算机可读程序的非暂时性计算机可读介质,其中所述计算机可读程序在计算设备上执行时致使所述计算设备:
从多个第三方应用接收多个因特网协议(IP),以作为有源FPGA中间件框架的输入,其中所述多个IP包括多个片段和对应于所述多个片段中的每个片段的序列号,其中所接收的多个IP的多个片段包括传输控制协议(TCP)或用户数据报协议(UDP);
重新组装所接收的TCP和所接收的UDP,其中所述重新组装基于所述多个片段的序列号;
关于片段的丢失序列检查重新组装的UDP,并请求从多个第三方应用在所述TCP信道上重新传输重新组装的UDP的丢失序列;
插入所述重新组装的UDP和重新传输的UDP的丢失序列,以在所述有源FPGA中间件框架中形成具有多个序列号的完整消息;
将来自所述有源FPGA中间件框架的具有多个序列号的完整消息传送到无源FPGA中间件框架,以用于维持所述有源FPGA中间件框架和无源FPGA中间件框架之间的所接收IP的实时动态同步;
基于多个序列号的被传送到无源FPGA中间件的完整消息的传输来检测所述有源FPGA中间件框架的故障转移;并且
在检测到所述有源FPGA中间件框架的故障之后,通过激活所述无源FPGA中间件框架而从检测到的故障转移中恢复。
CN201910736558.9A 2018-08-09 2019-08-09 用于fpga中间件框架的基于消息的通信和故障恢复的方法和系统 Active CN110830285B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
IN201821030011 2018-08-09
IN201821030011 2018-08-09

Publications (2)

Publication Number Publication Date
CN110830285A true CN110830285A (zh) 2020-02-21
CN110830285B CN110830285B (zh) 2022-03-25

Family

ID=67658591

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910736558.9A Active CN110830285B (zh) 2018-08-09 2019-08-09 用于fpga中间件框架的基于消息的通信和故障恢复的方法和系统

Country Status (4)

Country Link
US (1) US11212218B2 (zh)
EP (1) EP3609108B1 (zh)
CN (1) CN110830285B (zh)
AU (1) AU2019213420B2 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115629916A (zh) * 2022-12-23 2023-01-20 湖南博匠信息科技有限公司 一种基于Zynq的业务程序故障恢复方法

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112328396B (zh) * 2020-11-09 2022-10-21 西安电子科技大学 基于任务等级的动态自适应sopc容错方法
CN112565115A (zh) * 2020-11-27 2021-03-26 上海金仕达软件科技有限公司 Tcp数据的传输方法、装置、计算机设备及存储介质
EP4033715A1 (en) * 2021-01-22 2022-07-27 Tata Consultancy Services Limited Re-assembly middleware in fpga for processing tcp segments into application layer messages
EP4047480B1 (en) * 2021-02-19 2024-04-24 Tata Consultancy Services Limited A low-latency fpga framework based on reliable udp and tcp re-assembly middleware
US11940886B2 (en) 2022-01-19 2024-03-26 Dell Products L.P. Automatically predicting fail-over of message-oriented middleware systems
CN115065733B (zh) * 2022-04-14 2024-04-16 中国银行股份有限公司 数据发布与订阅系统、数据发布方法、数据订阅方法
EP4293991A1 (en) * 2022-06-15 2023-12-20 Tata Consultancy Services Limited Method and system for time sensitive processing of tcp segments into application layer messages
CN115827168B (zh) * 2023-02-01 2023-05-12 南京芯传汇电子科技有限公司 一种二进制仿真环境下虚拟机通信的优化方法

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1783880A (zh) * 2004-11-01 2006-06-07 朗迅科技公司 软路由器动态绑定协议
CN1819581A (zh) * 2004-11-01 2006-08-16 朗迅科技公司 软路由器协议故障恢复
US20070300235A1 (en) * 2006-06-27 2007-12-27 Eliezer Dekel Reliable messaging using a message stream in a high speed, low latency data communications environment
CN101133380A (zh) * 2005-01-06 2008-02-27 特维拉有限公司 基于硬件的消息传递设备
US20080104266A1 (en) * 2006-10-25 2008-05-01 Eliezer Dekel Reliable messaging using message streams in a high speed, low latency data communications environment
WO2009147820A1 (ja) * 2008-06-02 2009-12-10 株式会社 東芝 ディジタル処理型監視装置
CN102473105A (zh) * 2010-01-04 2012-05-23 阿瓦雅公司 用于提高系统故障恢复性能的主要与辅助虚拟化软件映像之间的分组镜像
US20130159452A1 (en) * 2011-12-06 2013-06-20 Manuel Alejandro Saldana De Fuentes Memory Server Architecture
CN104094249A (zh) * 2012-04-25 2014-10-08 惠普发展公司,有限责任合伙企业 使用xml的文件传输
CN104284065A (zh) * 2014-09-30 2015-01-14 华中科技大学 一种基于fpga的工业智能相机
CN107204992A (zh) * 2017-07-13 2017-09-26 西安科技大学 一种多功能串口服务器及数据传输方法

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SE0102199D0 (sv) * 2001-06-20 2001-06-20 Ericsson Telefon Ab L M Upgrading field programmable gate arrays over datacommunication networks
US20080119165A1 (en) * 2005-10-03 2008-05-22 Ajay Mittal Call routing via recipient authentication
US9215131B2 (en) 2012-06-29 2015-12-15 Cisco Technology, Inc. Methods for exchanging network management messages using UDP over HTTP protocol
US9698791B2 (en) * 2013-11-15 2017-07-04 Scientific Concepts International Corporation Programmable forwarding plane
US8756417B1 (en) * 2014-02-04 2014-06-17 Sypris Electronics, Llc Multi-level assurance trusted computing platform
US10097373B2 (en) * 2014-08-15 2018-10-09 LiveQoS Inc. UDP over TCP tunnel
GB2534563A (en) * 2015-01-26 2016-08-03 Telesoft Tech Ltd Data retention probes and related methods
DE102015016716A1 (de) * 2015-12-22 2017-06-22 Giesecke & Devrient Gmbh Verfahren zur Übermittlung von Sendedaten von einer Sendeeinrichtung zu einer Empfangseinrichtung zur Verarbeitung der Sendedaten und Mittel zur Durchführung des Verfahrens
US10225230B2 (en) * 2016-12-14 2019-03-05 Raytheon Company System and method for address-mapped control of field programmable gate array (FPGA) via ethernet
US10691562B2 (en) * 2017-03-17 2020-06-23 American Megatrends International, Llc Management node failover for high reliability systems
US10621127B2 (en) * 2017-03-31 2020-04-14 International Business Machines Corporation Communication channel for reconfigurable devices
US10686872B2 (en) * 2017-12-19 2020-06-16 Xilinx, Inc. Network interface device
EP3732790B1 (en) * 2017-12-28 2023-10-11 Unify Patente GmbH & Co. KG Method for programming a field programmable gate array and network configuration
EP3543870B1 (en) * 2018-03-22 2022-04-13 Tata Consultancy Services Limited Exactly-once transaction semantics for fault tolerant fpga based transaction systems

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1783880A (zh) * 2004-11-01 2006-06-07 朗迅科技公司 软路由器动态绑定协议
CN1819581A (zh) * 2004-11-01 2006-08-16 朗迅科技公司 软路由器协议故障恢复
CN101133380A (zh) * 2005-01-06 2008-02-27 特维拉有限公司 基于硬件的消息传递设备
US20070300235A1 (en) * 2006-06-27 2007-12-27 Eliezer Dekel Reliable messaging using a message stream in a high speed, low latency data communications environment
US20080104266A1 (en) * 2006-10-25 2008-05-01 Eliezer Dekel Reliable messaging using message streams in a high speed, low latency data communications environment
WO2009147820A1 (ja) * 2008-06-02 2009-12-10 株式会社 東芝 ディジタル処理型監視装置
CN102473105A (zh) * 2010-01-04 2012-05-23 阿瓦雅公司 用于提高系统故障恢复性能的主要与辅助虚拟化软件映像之间的分组镜像
US20130159452A1 (en) * 2011-12-06 2013-06-20 Manuel Alejandro Saldana De Fuentes Memory Server Architecture
CN104094249A (zh) * 2012-04-25 2014-10-08 惠普发展公司,有限责任合伙企业 使用xml的文件传输
CN104284065A (zh) * 2014-09-30 2015-01-14 华中科技大学 一种基于fpga的工业智能相机
CN107204992A (zh) * 2017-07-13 2017-09-26 西安科技大学 一种多功能串口服务器及数据传输方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115629916A (zh) * 2022-12-23 2023-01-20 湖南博匠信息科技有限公司 一种基于Zynq的业务程序故障恢复方法

Also Published As

Publication number Publication date
US20200053004A1 (en) 2020-02-13
AU2019213420A1 (en) 2020-02-27
AU2019213420B2 (en) 2023-01-12
CN110830285B (zh) 2022-03-25
EP3609108A1 (en) 2020-02-12
EP3609108B1 (en) 2021-04-28
US11212218B2 (en) 2021-12-28

Similar Documents

Publication Publication Date Title
CN110830285B (zh) 用于fpga中间件框架的基于消息的通信和故障恢复的方法和系统
US9699050B2 (en) Method and apparatus for learning online state of terminal
US8108715B1 (en) Systems and methods for resolving split-brain scenarios in computer clusters
US9189316B2 (en) Managing failover in clustered systems, after determining that a node has authority to make a decision on behalf of a sub-cluster
CN111190747A (zh) 用于消息队列的消息丢失检测方法和装置
JP5863199B2 (ja) 無線ネットワーク環境における基地局にmdt測定情報を提供する方法及びシステム
CN113039763A (zh) 使用nf之间的直接信令的nf服务消费者重启检测
CN110505220B (zh) 支持opc协议实现双机热备的方法、装置以及通信终端
CN111083049B (zh) 一种用户表项恢复方法、装置、电子设备及存储介质
US7889685B2 (en) System and method for platform resilient VoIP processing
US11736594B2 (en) Low-latency FPGA framework based on reliable UDP and TCP re-assembly middleware
CN114826542A (zh) 基于异步串行通信的数据传输方法、装置、设备及介质
WO2017045474A1 (zh) 报文解析的方法及装置
CN111865811B (zh) 一种数据处理方法、装置、设备及介质
US8880957B2 (en) Facilitating processing in a communications environment using stop signaling
CN109996349B (zh) 一种会话恢复方法及其装置
CN111416851A (zh) 在多个负载均衡器之间进行会话同步的方法和负载均衡器
CN112997461B (zh) 方法、装置和计算机程序
US11954509B2 (en) Service continuation system and service continuation method between active and standby virtual servers
JP6556852B2 (ja) 多重化処理システム、多重化処理方法及びプログラム
CN111712801A (zh) 具有联网功能的设备
CN112131185B (zh) 一种超融合分布式存储节点内服务高可用方法及装置
JP2016206697A (ja) 物体検出装置のエラー制御方法及びエラー制御プログラム
US20060106761A1 (en) Remote detection of a fault condition of a management application using a networked device
CN114338357A (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