CN108600044B - 一种接口状态获取方法、装置及设备 - Google Patents
一种接口状态获取方法、装置及设备 Download PDFInfo
- Publication number
- CN108600044B CN108600044B CN201810296333.1A CN201810296333A CN108600044B CN 108600044 B CN108600044 B CN 108600044B CN 201810296333 A CN201810296333 A CN 201810296333A CN 108600044 B CN108600044 B CN 108600044B
- Authority
- CN
- China
- Prior art keywords
- interface
- interface state
- kernel
- state
- engine
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 41
- 238000012544 monitoring process Methods 0.000 claims abstract description 6
- 238000004891 communication Methods 0.000 claims description 21
- 230000006870 function Effects 0.000 claims description 14
- 238000004590 computer program Methods 0.000 claims description 11
- 230000008859 change Effects 0.000 claims description 6
- 230000008569 process Effects 0.000 description 7
- 230000009471 action Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 3
- 230000008713 feedback mechanism Effects 0.000 description 3
- 230000006855 networking Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 2
- 230000000717 retained effect Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0811—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking connectivity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/50—Testing arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Environmental & Geological Engineering (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明实施例提供一种接口状态获取方法、装置及设备,方法包括:在网络设备中设置接口状态引擎,接口状态引擎监测接口状态是否发生变化,如果发生变化,将发生变化的接口的状态信息发送至网络设备的内核;接口状态引擎并不像线程一样易被中断或切换,因此,本方案中,由接口状态引擎监测接口状态,相比于利用线程轮询接口状态的方案,能够更及时地获取到接口状态,提高了网络的可靠性。
Description
技术领域
本发明涉及通信技术领域,特别是涉及一种接口状态获取方法、装置及设备。
背景技术
计算机网络中一般包括计算机、网关设备、路由器等各种网络设备,每台网络设备包括一个或多个接口。接口一般存在两种状态:连接状态(UP)和断开状态(DOWN),通常需要获取接口的状态,以便在接口处于断开状态时及时切换接口,提高网络的可靠性。
目前,获取接口状态的方案一般包括:启动内核级线程,该线程依次查询每个接口的状态。但是对于一个线程来说,由于其可调用的属性,其容易被中断或者被切换。如果在该内核级线程轮询接口状态的过程中,该内核级线程被中断或者被切换,则不能及时获取到接口的状态,也就不能及时对接口进行切换,降低了网络的可靠性。
发明内容
本发明实施例的目的在于提供一种接口状态获取方法、装置及设备,以提高网络的可靠性。
为达到上述目的,本发明实施例提供了一种接口状态获取方法,应用于网络设备,所述网络设备中设置有接口状态引擎;所述方法包括:
所述接口状态引擎监测接口状态是否发生变化;
如果发生变化,所述接口状态引擎将发生变化的接口的状态信息发送至所述网络设备的内核。
可选的,所述接口状态引擎监测接口状态是否发生变化,可以包括:
以定时器中断的方式,触发所述接口状态引擎获取接口状态,并判断本次获取的接口状态相比于上一次获取的接口状态是否发生变化。
可选的,所述接口状态引擎将发生变化的接口的状态信息发送至所述网络设备的内核,可以包括:
所述接口状态引擎调用内核注册接口引擎函数,将发生变化的接口的状态信息发送至所述网络设备的内核。
可选的,在所述接口状态引擎将发生变化的接口的状态信息发送至所述网络设备的内核之后,所述方法还可以包括:
所述内核将所述状态信息发送至所述网络设备的应用软件;
或者,所述内核将所述状态信息存储至消息池,并在接收到所述应用软件的获取指令后,将所述消息池中存储的状态信息发送至所述应用软件。
可选的,所述内核将所述状态信息存储至消息池,并在接收到所述应用软件的获取指令后,将所述消息池中存储的状态信息发送至所述应用软件,包括:
所述内核判断接收到的状态信息是否为所述接口状态引擎首次发送的状态信息;
如果是,所述内核将所述首次发送的状态信息发送至所述应用软件;
如果否,所述内核将所述状态信息存储至消息池,并在接收到所述应用软件的获取指令后,将所述消息池中存储的状态信息发送至所述应用软件。
可选的,所述方法还可以包括:
所述内核向所述接口状态引擎发送访问指令;
若所述接口状态引擎同时接收到多个内核的访问指令,则所述接口状态引擎在所述多个内核中确定一个目标内核;响应所述目标内核的访问指令。
为达到上述目的,本发明实施例还提供了一种接口状态获取装置,应用于网络设备,所述装置包括:接口状态引擎及内核;其中,
所述接口状态引擎,用于监测接口状态是否发生变化;并在判断结果为是的情况下,将发生变化的接口的状态信息发送至所述内核。
可选的,所述接口状态引擎还用于:
以定时器中断触发的方式获取接口状态,并判断本次获取的接口状态相比于上一次获取的接口状态是否发生变化。
可选的,所述接口状态引擎还用于:
调用内核注册接口引擎函数,将发生变化的接口的状态信息发送至内核。
可选的,所述内核具体用于:
接收所述接口状态引擎发送的状态信息;
将所述状态信息发送至所述网络设备的应用软件;或者,将所述状态信息存储至消息池,并在接收到所述应用软件的获取指令后,将所述消息池中存储的状态信息发送至所述应用软件。
可选的,所述内核具体用于:
接收所述接口状态引擎发送的状态信息;判断接收到的状态信息是否为所述接口状态引擎首次发送的状态信息;如果是,将所述首次发送的状态信息发送至所述应用软件;如果否,将所述状态信息存储至消息池,并在接收到所述应用软件的获取指令后,将所述消息池中存储的状态信息发送至所述应用软件。
可选的,所述内核还用于:向所述接口状态引擎发送访问指令;
所述接口状态引擎还用于:若同时接收到多个内核的访问指令,则在所述多个内核中确定一个目标内核;响应所述目标内核的访问指令。
为达到上述目的,本发明实施例还提供了一种网络设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现上述任一种接口状态获取方法。
为达到上述目的,本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种接口状态获取方法。
应用本发明所示实施例,在网络设备中设置接口状态引擎,接口状态引擎监测接口状态是否发生变化,如果发生变化,将发生变化的接口的状态信息发送至网络设备的内核;接口状态引擎并不像线程一样易被中断或切换,因此,本方案中,由接口状态引擎监测接口状态,相比于利用线程轮询接口状态的方案,能够更及时地获取到接口状态,提高了网络的可靠性。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的接口状态获取方法的第一种流程示意图;
图2为本发明实施例提供的一种组网示意图;
图3为本发明实施例提供的接口状态获取方法的第二种流程示意图;
图4为本发明实施例提供的一种接口状态获取装置的结构示意图;
图5为本发明实施例提供的一种网络设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
为了解决上述技术问题,本发明实施例提供了一种接口状态获取方法、装置及设备。该方法及装置应用于网络设备,该网络设备可以为网关、路由器、交换机、计算机等等,具体不做限定。该网络设备中设置有接口状态引擎。
下面首先对本发明实施例提供的接口状态获取方法进行详细说明。
图1为本发明实施例提供的接口状态获取方法的第一种流程示意图,包括以下步骤。
S101:接口状态引擎监测接口状态是否发生变化;如果发生变化,执行S102。
举例来说,该接口状态引擎可以为驱动程序,被安装于系统驱动中执行图1所示的流程。或者,该接口状态引擎也可以为芯片中的一段程序代码,或者说,网络设备中设置一块能够实现接口状态引擎的芯片,该芯片还可以实现其他功能,具体不做限定。
作为一种实施方式,S101可以包括:以定时器中断的方式,触发所述接口状态引擎获取接口状态,并判断本次获取的接口状态相比于上一次获取的接口状态是否发生变化。
定时器中断可以为由芯片中的定时器溢出而申请的中断,定时器中断的时间间隔可以根据实际情况进行设定。每当定时器中断时,接口状态引擎获取一次接口状态,并判断本次获取的接口状态相比于上一次获取的接口状态是否发生变化。接口状态发生变化是指接口由连接状态变为断开状态,或者由断开状态变为连接状态。
举例来说,接口状态引擎获取接口状态具体可以为:接口状态引擎访问每个接口对应的寄存器,根据寄存器中的硬件状态值,得到每个接口的状态信息。比如,该硬件状态值为0时,表示接口处于断开状态,该硬件状态值为1时,表示接口处于连接状态。
如果网络设备中存在多个接口,接口状态引擎每次可以获取所有接口的状态,并将本次获取的所有接口的状态分别与上一次获取的所有接口的状态进行一一对比,判断是否存在状态发生变化的接口。
如果不存在,接口状态引擎继续监测接口状态;如果存在,执行S102,而且接口状态引擎也继续监测接口状态。继续监测接口状态也就是继续通过定时器中断的方式,每隔一段时间,获取一次所有接口的接口状态。
S102:接口状态引擎将发生变化的接口的状态信息发送至网络设备的内核。
举例来说,发生变化的接口的状态信息中可以包括状态发生变化的接口的标识、以及状态发生变化的接口的最新状态信息。假设网络设备中存在6个接口,其中接口1由连接状态变为断开状态,接口5由断开状态变为连接状态,则接口状态引擎发送给内核的内容可以包括:接口1-断开状态,接口5-连接状态。其中,1和5可以理解为接口的标识。
或者,接口状态引擎也可以将所获取的全部状态信息发送至内核,由内核判断哪个接口的状态发生了变化。假设网络设备中存在3个接口,第一次状态变化为:接口1由连接状态变为断开状态,接口2由断开状态变为连接状态,接口3保持为连接状态,则接口状态引擎第一次发送给内核的内容可以包括:接口1-断开状态,接口2-连接状态,接口3-连接状态。第二次状态变化为:接口1由断开状态变为连接状态,接口2保持为连接状态,接口3保持为连接状态,则接口状态引擎第一次发送给内核的内容可以包括:接口1-连接状态,接口2-连接状态,接口3-连接状态。这样,内核可以判断出接口1的状态发生了改变,进而得到发生变化的接口的状态信息,这也是合理的。
内核可以理解为CPU内核,内核也可以理解为一段程序代码。现有方案中,一般都是内核直接访问接口,而本方案中,内核并不直接访问接口,内核访问接口状态引擎,接口状态引擎访问接口从而获取接口状态,再将获取的接口状态发送给内核。
如上所述,接口状态引擎可以为驱动程序,本实施例中,内核可以通过接口状态引擎访问接口对应的寄存器获取接口状态,而不是由内核直接访问接口对应的寄存器获取接口状态。
现有方案中,如果网络设备中存在多个内核,多个内核一起访问同一接口时,容易出现数据读写错误。
而本方案中,多个内核并不直接访问接口,假设多个内核同时向接口状态引擎发送访问指令,则接口状态引擎同时接收到多个内核的访问指令,接口状态引擎在所述多个内核中确定一个目标内核;响应所述目标内核的访问指令。
举例来说,接口状态引擎可以将优先级较高的内核确定为目标内核,只响应一个内核的访问指令,可以减少出现上述读写错误的情况。
如果两个内核同时向接口状态引擎发送访问指令,接口状态引擎响应目标内核的访问指令之后,再响应另一个内核的访问指令。如果两个以上内核同时向接口状态引擎发送访问指令,接口状态引擎可以根据该两个以上内核的优先级,确定响应顺序,优先级最高的为目标内核,先对目标内核进行响应,响应结束后,再对优先级次高的内核进行响应,以此类推,不再赘述。
作为一种实施方式,S102可以包括:所述接口状态引擎调用内核注册接口引擎函数,将发生变化的接口的状态信息发送至内核。
接口状态引擎可以与内核之间进行通信,本实施方式中,接口状态引擎通过调用函数(例如内核注册接口引擎函数),向内核发送数据。
作为一种实施方式,在S102之后,内核可以将该状态信息发送至应用软件。
举例来说,应用软件可以通过调用函数,获取接口的状态信息,该函数可以为IF_LinkUpIOCtl_PF(IOCtl表示设备驱动程序中对设备的I/O通道进行管理的函数,PF即PROTOCOL FAMILY,表示协议族)。
一种实施方式中,内核在得到发生变化的接口的状态信息后,可以直接将该发生变化的接口的状态信息发送至应用软件。这样,应用软件可以更及时地得知接口的状态,及时地对接口进行切换。
或者,另一种实施方式中,内核在得到发生变化的接口的状态信息后,可以将得到的状态信息存储至消息池,内核在接收到所述应用软件的获取指令后,再将所述消息池中存储的状态信息发送至所述应用软件。
消息池可以位于内核中,或者也可以位于网络设备的其他位置,内核可以在消息池中读写数据。
举例来说,应用软件可以每隔一个时间段,向内核发送获取指令,具体的时间间隔可以根据实际情况设定。本实施方式中,可以根据实际情况设定应用软件与内核的交互频率。
或者,作为另一种实施方式,内核接收到状态信息后,先判断该状态信息是否为所述接口状态引擎首次发送的状态信息;如果是,所述内核将所述首次发送的状态信息发送至应用软件;如果否,所述内核将所述状态信息存储至消息池,并在接收到所述应用软件的获取指令后,将所述消息池中存储的状态信息发送至所述应用软件。
本实施方式中的“首次发送的状态信息”可以理解为网络设备上电初始化时,接口状态引擎首次向内核发送的状态信息。网络设备上电初始化时,消息池中可以为空,此时,内核可以将“接口状态引擎首次发送的状态信息”直接发送至应用软件。这之后,内核将接口状态引擎发送的状态信息均存储至消息池,此时,应用软件可以定期访问消息池。
消息池中可以只保留内核最新一次得到的接口状态信息,这样,内核在接收到所述应用软件的获取指令后,可以将消息池中所有的状态信息都发送至应用软件。或者,也可以保留之前的接口状态信息,具体不做限定。
或者,应用软件发送的获取指令中也可以包括接口标识,这样,应用软件能够从消息池中获取到该标识对应的接口状态信息。如上所述,应用软件调用IF_LinkUpIOCtl_PF函数,可以在该函数中添加所要获取的接口标识,以获取该标识对应的接口状态信息。
应用本发明图1所示实施例,接口状态引擎并不像线程一样易被中断或切换,因此,本方案中,由接口状态引擎监测接口状态,相比于利用线程轮询接口状态的方案,能够更及时地获取到接口状态,提高了网络的可靠性。
现有方案中,利用线程轮询接口状态之后,线程一般进入睡眠状态,间隔一段时间后,再次启动该线程轮询接口状态。如果线程进入睡眠状态后,接口连接状态变为断开状态,则不能及时获取到该接口的状态,也就不能及时对该接口进行切换,降低了网络的可靠性。
而本方案中,接口状态引擎不会进入睡眠状态,一直监测接口状态,相比于现有方案,进一步提高了网络的可靠性。
现有方案中,线程依次查询每个接口的状态,这一过程存在较长时延,也会导致获取接口状态不及时。而本方案中,通过接口状态引擎实现了消息反馈机制,及时将发生变化的接口状态信息反馈至内核。
另外,一般来说,软件的反馈时长一般比硬件的反馈时长短。现有方案实际上是通内核直接获取接口状态,采用的是硬件反馈机制:如果一个接口由断开状态变为连接状态,一段时间后,寄存器才会更改相应的硬件状态值,从而导致反馈的时长较长。而本方案采用的是软件反馈机制,接口状态引擎的反馈时长较短,在这一段时间内,接口状态引擎可以多次获取接口状态,因此,接口状态引擎能够及时获取接口的最新状态。
下面以一具体的应用场景为例进行说明,参考图2,图2为双机冗余组网,该组网中包括多台服务器(服务器A和服务器B)、多台网关设备(网关设备A、网关设备B和网关设备C)和多台交换机(交换机A和交换机B)。假设网关设备B出现故障,导致网关设备B与网关设备A通信的接口状态由连接状态变为断开状态,需要将网关设备B中的流量切换至网关设备A。
举例来说,网关设备A可以应用本发明实施例:网关设备A的接口状态引擎监测到网关设备A与网关设备B通信的接口状态由连接状态变为断开状态,网关设备A的接口状态引擎将发生变化的接口的状态信息发送至网关设备A的内核,网关设备A的内核将该状态信息发送至网关设备A的应用软件;网关设备A的应用软件更新流量策略,将原来经过网关设备B的流量切换到网关设备A,完成流量业务的切换工作。
图3为本发明实施例提供的接口状态获取方法的第二种流程示意图,包括以下步骤。
S301:以定时器中断的方式,触发接口状态引擎获取接口状态,并判断本次获取的接口状态相比于上一次获取的接口状态是否发生变化,如果发生变化,执行S302。
S302:接口状态引擎调用内核注册接口引擎函数,将发生变化的接口的状态信息发送至内核。
S303:内核判断接收到的状态信息是否为接口状态引擎首次发送的状态信息,如果是,执行S304,如果否,执行S305。
S304:内核将该首次发送的状态信息发送至应用软件。
S305:内核将该状态信息存储至消息池,并在接收到应用软件的获取指令后,将消息池中存储的状态信息发送至应用软件。
消息池中可以只保留内核最新一次得到的接口状态信息,这样,内核在接收到所述应用软件的获取指令后,可以将消息池中所有的状态信息都发送至应用软件。或者,也可以保留之前的接口状态信息,具体不做限定。
本实施例中的“首次发送的状态信息”可以理解为网络设备上电初始化时,接口状态引擎首次向内核发送的状态信息。网络设备上电初始化时,消息池中可以为空,此时,内核可以将“接口状态引擎首次发送的状态信息”直接发送至应用软件。这之后,内核将接口状态引擎发送的状态信息均存储至消息池,之后,应用软件可以定期访问消息池。
应用本发明图3所示实施例,在网络设备中设置接口状态引擎,接口状态引擎监测接口状态是否发生变化,如果发生变化,将发生变化的接口的状态信息发送至网络设备的内核;接口状态引擎并不像线程一样易被中断或切换,因此,本方案中,由接口状态引擎监测接口状态,相比于利用线程轮询接口状态的方案,能够更及时地获取到接口状态,提高了网络的可靠性。。
本发明实施例还提供一种接口状态获取装置,如图4所示,所述装置包括:接口状态引擎401及内核402;其中,
接口状态引擎401,用于监测接口状态是否发生变化;并在判断结果为是的情况下,将发生变化的接口的状态信息发送至内核402。
作为一种实施方式,接口状态引擎401还可以用于:
以定时器中断触发的方式获取接口状态,并判断本次获取的接口状态相比于上一次获取的接口状态是否发生变化。
作为一种实施方式,接口状态引擎401还可以用于:
调用内核注册接口引擎函数,将发生变化的接口的状态信息发送至内核。
作为一种实施方式,内核402具体可以用于:
接收所述接口状态引擎发送的状态信息;
将所述状态信息发送至所述网络设备的应用软件;或者,将所述状态信息存储至消息池,并在接收到应用软件的获取指令后,将所述消息池中存储的状态信息发送至应用软件。
作为一种实施方式,内核402具体可以用于:
接收接口状态引擎401发送的状态信息;判断接收到的状态信息是否为接口状态引擎401首次发送的状态信息;如果是,将所述首次发送的状态信息发送至应用软件;如果否,将所述状态信息存储至消息池,并在接收到应用软件的获取指令后,将所述消息池中存储的状态信息发送至应用软件。
作为一种实施方式,内核402还可以用于:
向接口状态引擎401发送访问指令;
接口状态引擎401还可以用于:若同时接收到多个内核的访问指令,则在所述多个内核中确定一个目标内核;响应所述目标内核的访问指令。
应用本发明图4所示实施例,在网络设备中设置接口状态引擎,接口状态引擎监测接口状态是否发生变化,如果发生变化,将发生变化的接口的状态信息发送至网络设备的内核;接口状态引擎并不像线程一样易被中断或切换,因此,本方案中,由接口状态引擎监测接口状态,相比于利用线程轮询接口状态的方案,能够更及时地获取到接口状态,提高了网络的可靠性。
本发明实施例还提供了一种网络设备,如图5所示,包括处理器501、通信接口502、存储器503和通信总线504,其中,处理器501,通信接口502,存储器503通过通信总线504完成相互间的通信,
存储器503,用于存放计算机程序;
处理器501,用于执行存储器503上所存放的程序时,实现上述任一种接口状态获取方法。
该网络设备可以为网关、路由器、交换机、计算机等等,具体不做限定。该网络设备中设置有接口状态引擎、内核及应用软件。
上述网络设备提到的通信总线可以是外设部件互连标准(Peripheral ComponentInterconnect,PCI)总线或扩展工业标准结构(Extended Industry StandardArchitecture,EISA)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
通信接口用于上述网络设备与其他设备之间的通信。
存储器可以包括随机存取存储器(Random Access Memory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本发明实施例还提供一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一种接口状态获取方法。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于图4所示的接口状态获取装置实施例、图5所示的网络设备实施例、以及上述计算机可读存储介质实施例而言,由于其基本相似于图1-3所示的接口状态获取方法实施例,所以描述的比较简单,相关之处参见图1-3所示的接口状态获取方法实施例的部分说明即可。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种接口状态获取方法,其特征在于,应用于网络设备,所述网络设备中设置有接口状态引擎,所述接口状态引擎为安装于系统驱动中的驱动程序,或者所述接口状态引擎为芯片中的一段程序代码,或者所述接口状态引擎为网络设备中的一块芯片;所述方法包括:
所述接口状态引擎监测接口状态是否发生变化;
如果发生变化,所述接口状态引擎将发生变化的接口的状态信息发送至所述网络设备的内核;
所述内核将所述状态信息发送至所述网络设备的应用软件;
或者,所述内核将所述状态信息存储至消息池,并在接收到所述应用软件的获取指令后,将所述消息池中存储的状态信息发送至所述应用软件;
所述内核将所述状态信息存储至消息池,并在接收到所述应用软件的获取指令后,将所述消息池中存储的状态信息发送至所述应用软件,包括:
所述内核判断接收到的状态信息是否为所述接口状态引擎首次发送的状态信息;
如果是,所述内核将所述首次发送的状态信息发送至所述应用软件;
如果否,所述内核将所述状态信息存储至消息池,并在接收到所述应用软件的获取指令后,将所述消息池中存储的状态信息发送至所述应用软件。
2.根据权利要求1所述的方法,其特征在于,所述接口状态引擎监测接口状态是否发生变化,包括:
以定时器中断的方式,触发所述接口状态引擎获取接口状态,并判断本次获取的接口状态相比于上一次获取的接口状态是否发生变化。
3.根据权利要求1所述的方法,其特征在于,所述接口状态引擎将发生变化的接口的状态信息发送至所述网络设备的内核,包括:
所述接口状态引擎调用内核注册接口引擎函数,将发生变化的接口的状态信息发送至所述网络设备的内核。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
所述内核向所述接口状态引擎发送访问指令;
若所述接口状态引擎同时接收到多个内核的访问指令,则所述接口状态引擎在所述多个内核中确定一个目标内核;响应所述目标内核的访问指令。
5.一种接口状态获取装置,其特征在于,应用于网络设备,所述装置包括:接口状态引擎及内核,所述接口状态引擎为安装于系统驱动中的驱动程序,或者所述接口状态引擎为芯片中的一段程序代码,或者所述接口状态引擎为网络设备中的一块芯片;其中,
所述接口状态引擎,用于监测接口状态是否发生变化;并在判断结果为是的情况下,将发生变化的接口的状态信息发送至所述内核;
所述内核用于:接收所述接口状态引擎发送的状态信息;将所述状态信息发送至所述网络设备的应用软件;或者,将所述状态信息存储至消息池,并在接收到所述应用软件的获取指令后,将所述消息池中存储的状态信息发送至所述应用软件;
所述内核具体用于:
接收所述接口状态引擎发送的状态信息;判断接收到的状态信息是否为所述接口状态引擎首次发送的状态信息;如果是,将所述首次发送的状态信息发送至所述应用软件;如果否,将所述状态信息存储至消息池,并在接收到所述应用软件的获取指令后,将所述消息池中存储的状态信息发送至所述应用软件。
6.根据权利要求5所述的装置,其特征在于,所述接口状态引擎还用于:
以定时器中断触发的方式获取接口状态,并判断本次获取的接口状态相比于上一次获取的接口状态是否发生变化。
7.根据权利要求5所述的装置,其特征在于,所述接口状态引擎还用于:
调用内核注册接口引擎函数,将发生变化的接口的状态信息发送至内核。
8.根据权利要求5所述的装置,其特征在于,所述内核还用于:向所述接口状态引擎发送访问指令;
所述接口状态引擎还用于:若同时接收到多个内核的访问指令,则在所述多个内核中确定一个目标内核;响应所述目标内核的访问指令。
9.一种网络设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;
存储器,用于存放计算机程序;
处理器,用于执行存储器上所存放的程序时,实现权利要求1-4任一所述的方法步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-4任一所述的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810296333.1A CN108600044B (zh) | 2018-03-30 | 2018-03-30 | 一种接口状态获取方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810296333.1A CN108600044B (zh) | 2018-03-30 | 2018-03-30 | 一种接口状态获取方法、装置及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108600044A CN108600044A (zh) | 2018-09-28 |
CN108600044B true CN108600044B (zh) | 2020-11-20 |
Family
ID=63624376
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810296333.1A Active CN108600044B (zh) | 2018-03-30 | 2018-03-30 | 一种接口状态获取方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108600044B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111314136B (zh) * | 2020-02-18 | 2022-12-27 | 安科讯(福建)科技有限公司 | 一种触发LTE Femto网关切换的方法及终端 |
Family Cites Families (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1313903C (zh) * | 2003-09-02 | 2007-05-02 | 华为技术有限公司 | 获取物理层芯片状态信息的方法及装置 |
CN100454278C (zh) * | 2006-01-19 | 2009-01-21 | 联想(北京)有限公司 | 计算机系统及其i/o端口访问控制方法 |
CN101296126B (zh) * | 2007-04-29 | 2011-07-20 | 华为技术有限公司 | 一种链路故障通告方法、接口管理单元和路由器 |
CN101083625B (zh) * | 2007-07-13 | 2011-04-06 | 华为技术有限公司 | 一种加快链路收敛的方法及装置 |
CN101197733A (zh) * | 2007-12-18 | 2008-06-11 | 中兴通讯股份有限公司 | 网络连通性的自动检测方法及装置 |
CN101252428A (zh) * | 2008-04-01 | 2008-08-27 | 中兴通讯股份有限公司 | 一种流量快速切换的方法和装置 |
CN101316203B (zh) * | 2008-07-10 | 2011-04-06 | 四川长虹电器股份有限公司 | 嵌入式ip终端网络连接状态监测方法 |
CN101800774A (zh) * | 2010-02-04 | 2010-08-11 | 中兴通讯股份有限公司 | 一种接入环保护方法及接入环保护网络 |
CN101877631A (zh) * | 2010-06-28 | 2010-11-03 | 中兴通讯股份有限公司 | 服务器及其业务切换方法 |
CN102064964B (zh) * | 2010-12-13 | 2012-09-05 | 中国人民解放军国防科学技术大学 | 一种千兆交换环境下千兆网卡的快速切换方法 |
CN102387087A (zh) * | 2011-12-18 | 2012-03-21 | 西安安智科技有限公司 | 基于主动检测技术实现备份路由的方法和系统 |
CN103269288B (zh) * | 2012-12-18 | 2017-11-21 | 上海斐讯数据通信技术有限公司 | 一种对交换机端口的检测方法 |
US10318541B2 (en) * | 2013-04-30 | 2019-06-11 | Splunk Inc. | Correlating log data with performance measurements having a specified relationship to a threshold value |
CN103326887B (zh) * | 2013-06-28 | 2016-03-16 | 迈普通信技术股份有限公司 | 一种接口管理方法及系统 |
CN103973493A (zh) * | 2014-05-12 | 2014-08-06 | 浪潮电子信息产业股份有限公司 | 一种千兆以太网的数据采集方法 |
CN105373393A (zh) * | 2014-08-20 | 2016-03-02 | 西安慧泽知识产权运营管理有限公司 | 一种在非事件驱动方式的os中实现对设备的热插拔的方法 |
CN105656711A (zh) * | 2014-12-02 | 2016-06-08 | 中兴通讯股份有限公司 | 信号检测方法及装置 |
CN104572519B (zh) * | 2014-12-22 | 2017-06-27 | 中国电子科技集团公司第三十八研究所 | 一种用于多处理器的多端口访存控制器及其控制方法 |
US9521134B2 (en) * | 2015-05-13 | 2016-12-13 | Atto Research Co., Ltd. | Control apparatus in software defined network and method for operating the same |
CN106775930A (zh) * | 2016-11-28 | 2017-05-31 | 中车株洲电力机车研究所有限公司 | 一种网口状态信息的获取方法及装置 |
CN106789611B (zh) * | 2016-12-29 | 2022-12-13 | 广州视声智能股份有限公司 | 一种综合网关及接口电路控制方法 |
CN106909375A (zh) * | 2017-02-17 | 2017-06-30 | 杭州迪普科技股份有限公司 | 一种端口状态的获取方法及装置 |
CN107273315A (zh) * | 2017-04-28 | 2017-10-20 | 国芯科技(北京)有限公司 | 存储单元访问方法、系统和多核处理装置 |
CN107273214A (zh) * | 2017-06-30 | 2017-10-20 | 郑州云海信息技术有限公司 | 一种基于固态硬盘的多核控制器资源访问方法及其装置 |
-
2018
- 2018-03-30 CN CN201810296333.1A patent/CN108600044B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN108600044A (zh) | 2018-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110300040B (zh) | 一种通信方法及相关设备 | |
WO2018049873A1 (zh) | 一种应用调度方法及装置 | |
CN109981737B (zh) | 一种网络请求的处理方法、装置、终端及存储介质 | |
JP3454297B2 (ja) | ネットワーク・スイッチ間のリンクをテストするための方法および装置 | |
CN111355637B (zh) | 网卡状态检测方法、装置、设备及存储介质 | |
US9569264B2 (en) | Multi-core system for processing data packets | |
CN108600044B (zh) | 一种接口状态获取方法、装置及设备 | |
CN109117278B (zh) | 一种移动终端及其进程间通信的限制方法、存储介质 | |
CN116431558B (zh) | 一种基于axi协议的请求响应方法、装置、系统及介质 | |
KR102303424B1 (ko) | 랜덤 액세스 메모리를 포함하는 하나 이상의 처리 유닛을 위한 직접 메모리 액세스 제어 장치 | |
CN111314140B (zh) | 提高网络设备稳定性的方法、装置、网络设备及存储介质 | |
CN108924128A (zh) | 一种移动终端及其进程间通信的限制方法、存储介质 | |
CN108804152B (zh) | 配置参数的调节方法及装置 | |
US10951732B2 (en) | Service processing method and device | |
CN110808967A (zh) | 挑战黑洞攻击的检测方法及相关装置 | |
US11797334B1 (en) | BMC parameter configuration and effect-taking method and apparatus, device, and medium | |
CN114257492B (zh) | 智能网卡的故障处理方法、装置、计算机设备和介质 | |
WO2020037607A1 (zh) | 一种传输数据的方法和装置 | |
CN115189977A (zh) | 一种基于axi协议的广播传输方法、系统及介质 | |
CN111200833A (zh) | 一种网元状态的确定方法及装置 | |
KR20160036846A (ko) | 채널 연결 관리 방법 및 장치 | |
CN108616461B (zh) | 一种策略切换方法及装置 | |
CN113472841B (zh) | 终止远程过程调用请求的实现方法及装置 | |
US20230291647A1 (en) | Communication control device, communication control method, and non-transitory computer readable recording medium | |
CN115918036B (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 |