CN110535790A - 基于semaphore的交换芯片异常报文处理方法 - Google Patents
基于semaphore的交换芯片异常报文处理方法 Download PDFInfo
- Publication number
- CN110535790A CN110535790A CN201910784704.5A CN201910784704A CN110535790A CN 110535790 A CN110535790 A CN 110535790A CN 201910784704 A CN201910784704 A CN 201910784704A CN 110535790 A CN110535790 A CN 110535790A
- Authority
- CN
- China
- Prior art keywords
- semaphore
- exception message
- message
- exception
- processing module
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L49/00—Packet switching elements
- H04L49/10—Packet switching elements characterised by the switching fabric construction
- H04L49/109—Integrated on microchip, e.g. switch-on-chip
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Debugging And Monitoring (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明提出一种应用于RapidIO交换网络的异常报文处理机制,所述机制中涉及RapidIO报文发送模块,另外还包括新设置的中断处理模块、semaphore处理模块、异常报文处理模块。本发明将基于semaphore的进程间通信机制与中断处理机制配合应用到RapidIO交换网络中,可以及时发现处理机发出的异常报文,及时结束处理机发送异常报文的任务;清除处理机发出的异常报文的功能,防止处理机发生死机,确保整个交换网络不受影响,既增强了交换网络的稳定性和可靠性,又避免了重启系统造成的损失,而且节省了人工重启系统的人力成本。
Description
技术领域
本发明属于RapidIO网络交换技术领域,尤其涉及一种基于semaphore的交换芯片异常报文处理方法。
背景技术
在通信领域,嵌入式系统内部互连的需求越来越大,而且对通信速率要求越来越高,RapidIO技术是一种高可靠性、高稳定性的解决方案。基于RapidIO技术的交换机是解决方案的实体,而交换机中的处理机作为整个交换网络的管理者,对网络的可靠性和稳定性起到核心作用。处理机通过发送报文来管理网络,如果由于多种原因发送出异常报文,那么RapidIO终端就不会响应,而处理机则会一直等待响应,处于死机状态,导致整个系统瘫痪。在产生异常报文的时候,处理机能否及时、准确的处理异常报文进而避免死机是至关重要的功能。所以针对基于RapidIO的交换网络,一种稳定可靠的异常报文处理机制是很有必要的。
现有的解决方案是重启RapidIO交换网络的主交换机,包括处理机和交换芯片。这种方法有三个缺点:第一,会丢失处理机上保存的网络信息;第二,会清空交换芯片上的当前配置;第三,需要人工实施重启,消耗人力资源。
发明内容
有鉴于此,本发明提供一种基于semaphore的交换芯片异常报文处理方法,可以及时结束异常报文任务,避免处理机发生死机,确保整个交换网络不受影响。
为达到上述目的,本发明的技术方案是这样实现的:
一种基于semaphore的交换芯片异常报文处理方法,包括:处理机报文发送,判断报文异常时,进行中断处理,发送semaphore信号量通知并清除异常报文。
进一步的,在报文发送前,还包括:
S11、创建semaphore;semaphore具有SEM_Q_FIFO配置选项和SEM_EMPTY状态标志;
S12、使能RapidIO中断,注册中断处理函数;
S12、启动异常报文处理进程并挂起。
更进一步的,所述异常报文处理进程包括异常报文监听部分和异常报文任务清除部分;异常报文监听部分用于接收semaphore信号量,异常报文任务清除部分用于结束发送异常报文的任务,清除异常报文。
进一步的,在所述中断处理后,还包括:
S21、关闭中断,停止响应异常报文引起的中断;
S22、清除中断标志位,避免持续发生中断。
更进一步的,清除异常报文后,重新打开中断,接收新的异常报文中断。
本发明另一方面,提供了一种基于semaphore的交换芯片异常报文处理机制,包括中断处理模块、semaphore处理模块、异常报文处理模块;所述semaphore处理模块用于建立semaphore通知机制;所述中断处理模块用于在RapidIO报文发送模块发出异常报文的时候,向异常报文处理模块发出semaphore通知;所述异常报文处理模块用于对异常报文进行处理。
进一步的,所述semaphore处理模块包括创建semaphore子模块,释放semaphore子模块,接收semaphore子模块;所述创建semaphore子模块包括SEM_Q_FIFO配置选项和SEM_EMPTY状态标志;所述释放semaphore子模块与所述中断处理模块关联,用于发出semaphore通知;所述接收semaphore子模块与所述异常报文处理模块关联,用于接收semaphore通知。
更进一步的,所述异常处理模块包括异常报文监听子模块和异常报文任务清除子模块;所述异常报文监听子模块与所述接收semaphore子模块关联,用于监听是否发生异常报文;所述异常报文任务清除模块用于将异常报文任务清除。
进一步的,所述中断处理模块设置中断处理程序,当RapidIO报文发送模块发出异常报文时,首先会进入中断处理模块的中断处理程序,然后关闭中断并清除中断标志位,再发出semaphore信号量通知异常报文处理模块,最后重新打开中断,等待下一次异常报文发送。
与现有技术相比,本发明的有益效果为:
本发明将基于semaphore的进程间通信机制与中断处理机制配合应用到RapidIO交换网络中,可以及时发现处理机发出的异常报文,及时结束处理机发送异常报文的任务;清除处理机发出的异常报文的功能,防止处理机发生死机,确保整个交换网络不受影响,既增强了交换网络的稳定性和可靠性,又避免了重启系统造成的损失,而且节省了人工重启系统的人力成本。
附图说明
图1为本发明实施例的异常报文处理流程图。
具体实施方式
需要说明的是,在不冲突的情况下,本发明的实施例及实施例中的特征可以相互组合。
本发明实施例中所涉及英文名词的基本解释如下:
semaphore:信号量,在多任务操作系统中,进程间通信的一种机制;
RapidIO:一种通信协议;
payload:报文中的实际数据;
hopcount:报文中的路由跳数;
destID:报文中的目标设备ID。
本发明提出了一种应用于RapidIO交换网络的异常报文处理机制,所述机制中涉及RapidIO报文发送模块,另外还包括新设置的中断处理模块、semaphore处理模块、异常报文处理模块。
所述RapidIO报文发送模块用于初始化报文发送准备工作,并且在需要发送报文的时候可以发出指定类型报文。
所述中断处理模块用于在RapidIO报文发送模块发出异常报文的时候向异常报文处理模块发出通知。当RapidIO报文发送模块发出异常报文的时候,首先会进入中断处理模块的中断处理程序,然后关闭中断并清除中断标志位,再通知异常报文处理模块,最后重新打开中断,等待下一次异常报文发送。
所述semaphore处理模块用于建立semaphore通知机制,该semaphore处理模块至少包括创建semaphore子模块,释放semaphore子模块,接收semaphore子模块,所述创建semaphore子模块至少包括SEM_Q_FIFO配置选项和SEM_EMPTY状态标志,所述释放semaphore子模块、接收semaphore子模块配合实现向异常报文处理模块发出异常报文处理通知的功能。
所述异常报文处理模块用于对异常报文进行处理,至少包括异常报文监听子模块和异常报文任务清除子模块,所述异常报文监听子模块用于监听是否发生异常报文,所述异常报文任务清除子模块用于将异常报文任务清除。
如图1所示,本发明所述应用于RapidIO交换网络的异常报文处理方法。包括如下步骤:
步骤0、开始异常报文处理机制;
步骤1、报文发送模块初始化,包括设置报文类型,设置payload,设置destID,设置hopcount,设置访问地址,设置访问数据等信息;
步骤2、创建semaphore,semaphore具有SEM_Q_FIFO配置选项和SEM_EMPTY状态标志;
步骤3、中断模块初始化,包括使能RapidIO中断,注册中断处理函数;
步骤4、启动异常报文处理进程;
步骤5、异常报文处理进程挂起,开始等待异常报文处理通知;
步骤6、启动报文发送进程,开始根据应用需求发送指定报文;
步骤7、判断发送的报文是否异常,如果异常,则进行步骤8,否则继续根据需求执行步骤6;
步骤8、进入中断处理流程,开始中断处理;
步骤9、关闭中断,停止响应异常报文引起的中断;
步骤10、清除中断标志位,避免持续发生中断;
步骤11、中断处理模块17向异常报文处理模块19发送semaphore,表示需要处理异常报文;
步骤12、异常报文处理模块19接收semaphore;
步骤13、结束发送异常报文的任务,清除异常报文;
步骤14、重新打开中断,可以接收新的异常报文中断;
步骤15、等待下一次异常报文处理需求。
以上描述了本发明的基本原理、主要特征和实施方案等信息,但是本发明不受上述实施过程的限制,在不脱离发明精神和范围的前提下,本发明还可以有各种变化和改进。因此,除非这种变化和改进脱离了本发明的范围,它们应该被看作包含在本发明中。
Claims (9)
1.一种基于semaphore的交换芯片异常报文处理方法,其特征在于,包括:处理机报文发送,判断报文异常时,进行中断处理,发送semaphore信号量通知并清除异常报文。
2.根据权利要求1所述的基于semaphore的交换芯片异常报文处理方法,其特征在于,在报文发送前,还包括:
S11、创建semaphore;semaphore具有SEM_Q_FIFO配置选项和SEM_EMPTY状态标志;
S12、使能RapidIO中断,注册中断处理函数;
S12、启动异常报文处理进程并挂起。
3.根据权利要求2所述的基于semaphore的交换芯片异常报文处理方法,其特征在于,所述异常报文处理进程包括异常报文监听部分和异常报文任务清除部分;异常报文监听部分用于接收semaphore信号量,异常报文任务清除部分用于结束发送异常报文的任务,清除异常报文。
4.根据权利要求1所述的基于semaphore的交换芯片异常报文处理方法,其特征在于,在所述中断处理后,还包括:
S21、关闭中断,停止响应异常报文引起的中断;
S22、清除中断标志位,避免持续发生中断。
5.根据权利要求4所述的基于semaphore的交换芯片异常报文处理方法,其特征在于,清除异常报文后,重新打开中断,接收新的异常报文中断。
6.一种基于semaphore的交换芯片异常报文处理机制,其特征在于,包括中断处理模块、semaphore处理模块、异常报文处理模块;所述semaphore处理模块用于建立semaphore通知机制;所述中断处理模块用于在RapidIO报文发送模块发出异常报文的时候,向异常报文处理模块发出semaphore通知;所述异常报文处理模块用于对异常报文进行处理。
7.根据权利要求6所述的基于semaphore的交换芯片异常报文处理机制,其特征在于,所述semaphore处理模块包括创建semaphore子模块,释放semaphore子模块,接收semaphore子模块;所述创建semaphore子模块包括SEM_Q_FIFO配置选项和SEM_EMPTY状态标志;所述释放semaphore子模块与所述中断处理模块关联,用于发出semaphore通知;所述接收semaphore子模块与所述异常报文处理模块关联,用于接收semaphore通知。
8.根据权利要求7所述的基于semaphore的交换芯片异常报文处理机制,其特征在于,所述异常处理模块包括异常报文监听子模块和异常报文任务清除子模块;所述异常报文监听子模块与所述接收semaphore子模块关联,用于监听是否发生异常报文;所述异常报文任务清除模块用于将异常报文任务清除。
9.根据权利要求6所述的基于semaphore的交换芯片异常报文处理机制,其特征在于,所述中断处理模块设置中断处理程序,当RapidIO报文发送模块发出异常报文时,首先会进入中断处理模块的中断处理程序,然后关闭中断并清除中断标志位,再发出semaphore信号量通知异常报文处理模块,最后重新打开中断,等待下一次异常报文发送。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910784704.5A CN110535790B (zh) | 2019-08-23 | 2019-08-23 | 基于semaphore的交换芯片异常报文处理方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910784704.5A CN110535790B (zh) | 2019-08-23 | 2019-08-23 | 基于semaphore的交换芯片异常报文处理方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110535790A true CN110535790A (zh) | 2019-12-03 |
CN110535790B CN110535790B (zh) | 2022-03-18 |
Family
ID=68664094
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910784704.5A Active CN110535790B (zh) | 2019-08-23 | 2019-08-23 | 基于semaphore的交换芯片异常报文处理方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110535790B (zh) |
Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0913767A2 (en) * | 1997-11-03 | 1999-05-06 | Motorola, Inc. | A method and apparatus for affecting subsequent instruction processing in a data processor |
US20080158596A1 (en) * | 2006-12-28 | 2008-07-03 | Brother Kogyo Kabushiki Kaisha | Information processing device, method and record medium for implementing status monitor |
CN101350744A (zh) * | 2008-06-19 | 2009-01-21 | 中兴通讯股份有限公司 | 一种网络处理系统中描述符资源的检测方法及其系统 |
CN101952806A (zh) * | 2007-12-18 | 2011-01-19 | 格罗方德半导体公司 | 用于设定运行于处理器上的程序软件之机制 |
CN104268029A (zh) * | 2014-09-23 | 2015-01-07 | 天津国芯科技有限公司 | 一种用于嵌入式PowerPC处理器异常嵌套的处理电路及方法 |
CN104917705A (zh) * | 2015-06-18 | 2015-09-16 | 国家电网公司 | 一种智能变电站过程层交换机的网络报文管理方法 |
CN105071977A (zh) * | 2015-09-15 | 2015-11-18 | 深圳市万网博通科技有限公司 | 一种基于交换机的网络运行质量的自检和自愈的方法 |
CN105357180A (zh) * | 2015-09-30 | 2016-02-24 | 华为技术有限公司 | 网络系统、攻击报文的拦截方法、装置和设备 |
US20160246604A1 (en) * | 2015-02-19 | 2016-08-25 | Arm Limited | Processor exception handling |
US20160299546A1 (en) * | 2015-04-10 | 2016-10-13 | Hong Fu Jin Precision Industry (Wuhan) Co., Ltd. | Central processing unit protection circuit |
CN106161647A (zh) * | 2016-08-25 | 2016-11-23 | 上海斐讯数据通信技术有限公司 | 一种云终端设备批量发现的方法及云终端管理系统 |
CN106534048A (zh) * | 2015-09-11 | 2017-03-22 | 中国电信股份有限公司 | 一种防范sdn拒绝服务攻击的方法、交换机和系统 |
CN106557380A (zh) * | 2016-10-24 | 2017-04-05 | 深圳有麦科技有限公司 | 用于保持服务器稳定的方法及其系统 |
CN106559395A (zh) * | 2015-09-29 | 2017-04-05 | 北京东土军悦科技有限公司 | 一种基于工业网络的数据报文检测方法及装置 |
CN107733837A (zh) * | 2016-08-11 | 2018-02-23 | 杭州迪普科技股份有限公司 | 基于应用层网络异常报文的异常检测方法及装置 |
CN108199980A (zh) * | 2017-12-29 | 2018-06-22 | 天津芯海创科技有限公司 | 交换芯片的事件监听方法和监听系统 |
CN108234476A (zh) * | 2017-12-29 | 2018-06-29 | 天津芯海创科技有限公司 | 交换芯片的事件监听方法和监听系统 |
-
2019
- 2019-08-23 CN CN201910784704.5A patent/CN110535790B/zh active Active
Patent Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP0913767A2 (en) * | 1997-11-03 | 1999-05-06 | Motorola, Inc. | A method and apparatus for affecting subsequent instruction processing in a data processor |
US20080158596A1 (en) * | 2006-12-28 | 2008-07-03 | Brother Kogyo Kabushiki Kaisha | Information processing device, method and record medium for implementing status monitor |
CN101952806A (zh) * | 2007-12-18 | 2011-01-19 | 格罗方德半导体公司 | 用于设定运行于处理器上的程序软件之机制 |
CN101350744A (zh) * | 2008-06-19 | 2009-01-21 | 中兴通讯股份有限公司 | 一种网络处理系统中描述符资源的检测方法及其系统 |
CN104268029A (zh) * | 2014-09-23 | 2015-01-07 | 天津国芯科技有限公司 | 一种用于嵌入式PowerPC处理器异常嵌套的处理电路及方法 |
US20160246604A1 (en) * | 2015-02-19 | 2016-08-25 | Arm Limited | Processor exception handling |
US20160299546A1 (en) * | 2015-04-10 | 2016-10-13 | Hong Fu Jin Precision Industry (Wuhan) Co., Ltd. | Central processing unit protection circuit |
CN104917705A (zh) * | 2015-06-18 | 2015-09-16 | 国家电网公司 | 一种智能变电站过程层交换机的网络报文管理方法 |
CN106534048A (zh) * | 2015-09-11 | 2017-03-22 | 中国电信股份有限公司 | 一种防范sdn拒绝服务攻击的方法、交换机和系统 |
CN105071977A (zh) * | 2015-09-15 | 2015-11-18 | 深圳市万网博通科技有限公司 | 一种基于交换机的网络运行质量的自检和自愈的方法 |
CN106559395A (zh) * | 2015-09-29 | 2017-04-05 | 北京东土军悦科技有限公司 | 一种基于工业网络的数据报文检测方法及装置 |
CN105357180A (zh) * | 2015-09-30 | 2016-02-24 | 华为技术有限公司 | 网络系统、攻击报文的拦截方法、装置和设备 |
CN107733837A (zh) * | 2016-08-11 | 2018-02-23 | 杭州迪普科技股份有限公司 | 基于应用层网络异常报文的异常检测方法及装置 |
CN106161647A (zh) * | 2016-08-25 | 2016-11-23 | 上海斐讯数据通信技术有限公司 | 一种云终端设备批量发现的方法及云终端管理系统 |
CN106557380A (zh) * | 2016-10-24 | 2017-04-05 | 深圳有麦科技有限公司 | 用于保持服务器稳定的方法及其系统 |
CN108199980A (zh) * | 2017-12-29 | 2018-06-22 | 天津芯海创科技有限公司 | 交换芯片的事件监听方法和监听系统 |
CN108234476A (zh) * | 2017-12-29 | 2018-06-29 | 天津芯海创科技有限公司 | 交换芯片的事件监听方法和监听系统 |
Non-Patent Citations (4)
Title |
---|
XIAOLEI LI; YUN ZHANG: "《Local Area Network Anomaly Detection Using Association Rules Mining》", 《 2009 5TH INTERNATIONAL CONFERENCE ON WIRELESS COMMUNICATIONS, NETWORKING AND MOBILE COMPUTING》 * |
林: "TCP/IP协议的安全性分析", 《大连民族学院学报》 * |
郭静寰等: "多线程同步机制在应用程序与驱动程序通信中的应用", 《微计算机信息》 * |
高永惠: "浅谈Delphi中的异常处理方法", 《湖南轻工业高等专科学校学报》 * |
Also Published As
Publication number | Publication date |
---|---|
CN110535790B (zh) | 2022-03-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US8677042B2 (en) | Interrupt moderation | |
US5987554A (en) | Method of controlling the transfer of information across an interface between two buses | |
US5404536A (en) | Scheduling mechanism for network adapter to minimize latency and guarantee background processing time | |
US8291246B2 (en) | High speed network interface with automatic power management with auto-negotiation | |
CN113190487B (zh) | PCIe设备热拔方法及装置 | |
EP2552081A2 (en) | Interrupt management | |
TW200809515A (en) | Method for a slave device to convey an interrupt and interrupt source information to a master device | |
EP1116122B1 (en) | Method and apparatus for transmitting and receiving network protocol compliant signal packets over a platform bus | |
CN107038137B (zh) | 一种热插拔的设备及方法 | |
US7266083B2 (en) | Method and apparatus for implementing queue pair connection protection over infiniband | |
US5935220A (en) | Apparatus and method for high speed data and command transfer over an interface | |
JPS6352260A (ja) | コンピュータ・ネットワーク・システム | |
US6754755B1 (en) | Service request system using an activity indicator to reduce processing overhead | |
EP2472355B1 (en) | Graceful out-of-band power control of remotely-managed computer systems | |
US6674751B1 (en) | Serialized bus communication and control architecture | |
TW201710917A (zh) | 資料處理技術 | |
CN110535790A (zh) | 基于semaphore的交换芯片异常报文处理方法 | |
CN110609762A (zh) | 一种防止先进高性能总线(ahb)死锁的方法及装置 | |
JP2000307600A (ja) | デバイス装置のハートビート回路 | |
Cisco | IBM Channel Attach Commands | |
US6629164B1 (en) | Character counter and match registers in a serial interface | |
Cisco | IBM Channel Attach Commands | |
CN108616461B (zh) | 一种策略切换方法及装置 | |
JP2005099918A (ja) | 二重化管理ネットワーク装置 | |
JP2003204367A (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 |